Eric 的个人资料Eric L. Golpe照片日志列表更多 工具 帮助

日志


5月5日

MSDN Blog Posts

I noticed it has been some time since I've cross-posted anything out here on my Spaces blog.
Check out my MSDN blog where you can find several postings from the last few months.
 
Unfortunately, I haven't had much time to sit and blog, but there's always an intention for me to do so.
 I'd like to hear from others any subject / info they'd like to hear more about, so feel free to add a comment or two and let me know.
 
Thanks!
12月5日

Ascertaining if "x" public site is running SharePoint

Quick and dirty method:
 
Append "_vti_bin/owssvr.dll" after the site:
 
Example: 
 
This should return your standard SharePoint page if the site is indeed running on SharePoint. 
Most folks don't go through the trouble of redirecting the old Vermeer shadow directories and/or disabling owssvr.dll (which would generally be considered bad for SharePoint..)  You can get some info on the old Front Page extensions remnant here: http://www.synergyonline.com/blog/blog-moss/Lists/Posts/Post.aspx?ID=24 
 
Stuff like this made SPS not-so-user-friendly back in 2001, but it is my trick of the day for confirming if a public website is running SharePoint.
( I also like when web admins on .NET boxes leave tracing on and you can use Trace.axd...  but that's me.. )  
 
-E-
12月2日

Issue installing Windows Server 2008 RC0

I created a new VPC image in Virtual Server 2007 today, and created two virtual HD's for it.
(I like to put data on it's own volume from the base OS.)
I then proceeded to install Windows Server 2008 RC0 Enterprise Edition (Full not Core) and I hit a small roadblock:
 
intall01
 
After scratching my head as to why it said "This computer's hardware may not support booting to this disk. Ensure that the disk's controller is enabled in the computer's BIOS menu."  I tried to create new partition and format them on the two disks.  Um, yeah, no: That didn't work.
 
I restarted the install and doubled-checked the Virtual PC's BIOS.  It was set to boot from Floppy first, so I set that to HD0, and disabled the PXE boot as the fourth option, just to be safe.   As it turns out, I must have clicked the prior screen's Custom button twice, since the install proceeded normally and I was good to go. intall02
Ho-hum... now for Visual Studio 2008 Team Suite once I get through it all. 
 
My goal is to get a 2008 VPC setup with SQL Server 2008 CTP5, 2008 VSTS, SharePoit Server 2007 and CRM 4.0 on it with all my dev stuff (ReSharper/Snippet Compiler/Reflector/etc.) to play with.
 
Wish me luck.  :)
11月22日

Visual Studio 2008 Ships!!

Visual Studio Team System 2008 ships!   (from Jeff Beehler's Blog Post)

What else can I say?  The big day has arrived (read the official word here on Soma's blog) and we're all very excited to let everyone know that all parts of the Visual Studio Team System 2008 product family are available today for download from MSDN.  If you're not already a subscriber to MSDN, you can download a 90-day trial of Team Suite and TFS instead.  We've been working on this release for the past two years so there's a whole lot of new features available, many of which we've talked about during the beta releases.  Here's a quick run down of some of the key features in Team System this time around (drop me a note if I missed your favorites):

Development Edition
Code Analysis Checkin Policy
Code Metrics
JavaScript debugging 
Performance run comparison
Hot pathing
Code Analysis Rules
Rules Management
Analyze menu
Spelling rules 

Database Edition
Integrate TeamData v1 into Team Suite

Test Edition
Auto cleanup of results
Control Load Modeling
New default views
Devices Unit testing
Test performance improvements
Inherited test classes
Load test and profiler integration
Web test correlation
Right-click test execution
Test generation from a compiled assembly
Webtest recorder support for AJAX and popups
Webtest playback improvements

Architecture Edition
Architectural Roles
Conform to WSDL
Top-down system design
Web application projects

Team Foundation Server
SharePoint 3.0 / 2007 support
Improved deployment experience
Better offline support
Continuous integration
Build queuing & scheduled builds
Drop Management
Annotate
Folder Diff
Get latest on checkout
Performance and scale improvements (Work Item Tracking / Version Control)
Destroy files
Improved source control merging
Workspace mapping improvements
Team System Web Access (power tool)

Many, many congratulations to all the people that worked so hard over the past couple of years on this release.  And more importantly, many, many thanks to our customers for providing us feedback on Team System 2005 as well as pre-releases of Team System 2008.  You help us do a better job!

Please try it out and let us know how Visual Studio Team System 2008 works for you!

Woohoo!

9月20日

Internet Security

I think everyone needs to stop by and pay homage to staysafe.org, and spread the word to your families about the site.
 
It's quite true that just about anyone can find info on folks (whether you like it or not) online, without too much of a struggle.
 
My wife and I have a very 'public attack profile' on the internet, having been a user of the digital superhighway since it's inception. Heck, I even helped (and continue to help) build the internet.  (Its really true.)
 
Having said that, we owe it to our generations to follow to be sensible and proactive in threat assessment and protection.  It starts NOW. (not tomorrow, not the day after, blah, blah, blah.)
 
I'm happy to have the opportunity to be able to go into the community and share the safety message this week (and perhaps thereafter more frequently), and my blog could possibly take a more informative direction for a wider audience in the future. 
 
Till then for now.
 
-The English speaking Eric Golpe (as opposed to this one.)
5月6日

Town Hall

I wanted to pass along an interesting article I came across, from Frank Hilario, entitled "Yahoo Bites Microsoft, Or, The Secret of Google".
 
I am a firm believer in not believing everything I read, and also, expecting the unexpected.
(How to expect what you don't know about is all about risk mitigation baby.. your best defense is an impeccable offense.)
 
My take is, and I will quote a COO I recently ran into at a company 'Town Hall' meeting.. "Speculation is just that.. speculation!".  Bravo. Well said.  Maybe Yes, Maybe No (or as Russian's would say, "Maybe Yes, Maybe Snow...")
 
I for one have to say this: "I'm not going down like that!"  and I'm pretty sure none of my colleagues are either. Frank's analogy for Willliam to align only with Bill is one the money.  There is a limit to coopetition and you never know.. maybe Yahoo would be strategic. Maybe not.  It depends on the allocentrism and direction.  I think nobody is clear of the direction yet at any of these companies...  How could you be in an evolving, ever-dynamic landscape we call the Net?? For certain, we employ some of the smartest talent in the world. We have some of the greatest products in the world running on over a billion (did you count that?) desktops every day.  And a legacy that goes with it. And have we mentioned customer service? Relationships? Tools? Frameworks?  Let's not lose track of the scope.. even internationally.  (BTW, have you seen the recent IE/Firefox numbers?? )
 
Anyhow, back to work...  
 
3月5日

GridView Ramblings..

I'm working on a web client application for a retailer, and implementing the new Web Client Software Factory architecture with the Enterprise Library Application Blocks. This has been both fun and exciting for me, as a DotNetJunkie that I am.
 
Just a quick snippet, ported from Thomas' VB blog posting, for adding a Sort Direction indicator to your own GridViews'. Simply call the method from your Grid's OnSorting method and voila, you have webdings indicators. (Remember to set the HTMLEncoding=false on the BoundFields you have your SortDirection set. Quick and simple. ;)
 
 public static void AppendSortOrderImageToGridHeader(SortDirection sortDir, string sortExpr, ref GridView grid)
        {
            int foundColumnIndex = -1;
            int colCount = grid.Columns.Count - 1;
            for (int i = 0; i <= colCount; i++)
            {
                grid.Columns[i].HeaderText = grid.Columns[i].HeaderText.Replace("<span style='font-family: Webdings; '> 5</span>", string.Empty);
                grid.Columns[i].HeaderText = grid.Columns[i].HeaderText.Replace("<span style='font-family: Webdings; '> 6</span>", string.Empty);
                if (sortExpr == grid.Columns[i].SortExpression)
                {
                    foundColumnIndex = i;
                }
            }
            if (foundColumnIndex > -1)
            {
                DataControlField dcField;
                if (sortDir == SortDirection.Ascending)
                {
                    dcField = grid.Columns[foundColumnIndex];
                    dcField.HeaderText = dcField.HeaderText + "<span style='font-family: Webdings; '> 5</span>";
                }
                else
                {
                    dcField = grid.Columns[foundColumnIndex];
                    dcField.HeaderText = dcField.HeaderText + "<span style='font-family: Webdings; '> 6</span>";
                }
            }
        }
7月30日

CallCenterContracts.com Unveiled!

Well, as if I didn't have enough to do in my life of umpteen business adventures plus overseeing four kids and a beautiful wife.. I would like to share with you some things from this past week..

- My 'boss' (I'm never sure how to refer to Danny, he is both a client, and my boss, and a great lead developer to work with..) is on vacation this week and was nice enough to 'forget' to send me what I should be working on this week, in our deployed online web application. Thanks Danny!

- I have been working on a big project secretly, and have now completed it to the point of beta testing, and it is now online for beta trials.. especially the payment gateways..  I am testing out Google Checkout, 2CO, and PayPal integrations. The site is CallCenterContracts.com and will be a online bidding site for CRM and BPO projects (and a slew of other projects.) Clients and providers of all types will sign-up, post projects, bid, and select each other through the site.. and can even make escrow payments for projects.  It is a great business model and I am gearing up for the live launch (and new features will be revealed..) on August 15th.  I invite any readers who don't know about it to check it out and leave me feedback.. just go to the site and enter 'checkoutthebeta' in the textbox in the lower left corner to get in and browse around. 

- Google never ceases to amaze me. They unveiled two things under their hat, namely video.google.com (check out some of the comedy clips..) and spreadsheets.google.com (a service I will CERTAINLY use!!) Check it out the brief intro here at http://www.google.com/googlespreadsheets/tour1.html

- Awesome pieces of software I ran into this week:

  • myLittleAdmin over at http://www.mylittletools.net/scripts/en/mla_sql_2005/ 
    myLittleAdmin for SQL Server 2005 is the first web-based management tool specially designed for MS SQL Server 2005.
  • Aptana is a new integrated development environment for building interactive web pages. It's likely to be a big hit among Web 2.0 developers since it facilitates speedy coding of JavaScript behaviors and CSS styles.
  • SILO, a 3D Modeling animation tool over at www.nevercenter.com This thing rocks and is amazingly easy to learn.  A MUST_HAVE
  • The new WS_FTP 2007 is out, and it rocks. Head over to www.ipswitch.com and download your 30-day trial. Beware: the price rocks a bit too.. 
  • Lutz Roeder's .NET Reflector is a CERTAIN MUST-HAVE for .NET geeks like me. Wow! Amazing! and FREE.. woo-hoo... http://www.aisto.com/roeder/dotnet
  • Bulk Rename Utility - Another free tool from http://www.bulkrenameutility.com ROCKS and is a great FREE tool as well..
  • PhotoSynth - Well it is Microsoft, and not yet out yet.. in fact it is still in labs.live.com.. but you SHOULD watch this short video: http://labs.live.com/photosynth/video.html

Great Games...

Just GOOGLE them: PIZZA FRENZY, CAKE MANIA, and INSANIQUARIUM DELUXE

plus Disney's online hit www.toontown.com (for those of you who have little ones too..)

- also some great sites I came across:

  • Paint Shop Pro Tutorials are online over here at LoadBoys site: http://www.loadboy.com/Psptuts/PspX/ (Thanks.. I now know how to use that darn new Point-To-Point Bezier Curve Pen Tool dude!)
  • http://www.lojackforlaptops.com $50 and I can find and beat up the perp after he/she snatched my laptop... OH YES!!
  • Intuit's http://www.mycorporation.com document filing services allow new business entities to get their filings and registrations done in record-breaking time. Great pricing too!
  • expo.live.com - Microsofts new online classifieds/social site looks promising too.

I also got in Microsoft Money 2005 (hey, it came with my new laptop...)  First installation that I have ever had that plays "elevator music" during the installation. (BTW, if you were the one responsible for this, how about an opt-out button for the muzic... after all, it's not LaunchCast radio... hehe)  But the initial impression of the UI is that it is going to be user friendly.

oh, and I even managed to fix one of my dev PC's that BSOD'ed me with a 0x007E STOP error... Image the solution.. reinstall WinXP and select repair, but use a licensed MediaCenter 2005 XP cd instead of the old 2600SP2 XP cd...  and much faster too..

So, thats the week in the life of a developer who has way too much time on his hands.. hehe... and I even managed to field a recruiter's call for a position over there in Redmond..  hey THAT would be cool too..  :)

Hit me up with comments about my site, and any comments.  I love to hear from people like YOU. Image

5月16日

Meet WiMo, the Windows Mobile 5 Robot

Note: This is a repost from Mr. Cross' Blog

Hi! My name is WiMo. I'm ready to play!

I'd like to introduce everyone to WiMo.   WiMo, this is everyone... Everyone, this is WiMo.  What exactly is WiMo? and why did I build him?  Both are great questions. 

WiMo is the the Windows Mobile Robot.  The name comes from the "Wi" from "Windows" and "Mo" from "Mobile" and is pronounced "Weemo" (think of it like a Spanish pronounciation). 

I built WiMo for a few different reasons:

  1. I've always wanted to build a robot and wanted to learn more about hardware.
  2. Working in Windows Mobile, i thought that our devices would be a lot of fun in a robot especially considering that they also have so much advanced functionality just waiting to be used in a robot (nice screen, speaker, several options of connectivity, an extremely rich API set, camera, etc).
  3. This would be a great way to show off some of our new and existing APIs and use the SDK in a fun and unique way.

Here's an overview of how WiMo works:
WiMo uses a Windows Mobile 5.0 Smartphone as the central "brain" of the robot.  This Smartphone sits directly ontop of a Windows Mobile SDK cd (I did say i was using the SDK in a fun and unique way).  The Smartphone communicates to a microcontroller via Bluetooth, using our Managed Bluetooth classes and also communicates with a Pocket PC (and soon to be desktop pc instead) via WiFi.  The Pocket PC can be used to remotely control WiMo.  The action pad of the Pocket PC is used for standard movement (up, down, left, right, stop). 

WiMo has 2 "modes": Personality mode and camera mode.  When WiMo is in personality mode, the Smartphone's screen is facing forward and displays a picture that represents WiMo.  Right now this is just any photo that I send down to the Smartphone from the Pocket PC. When in Camera Mode, WiMo rotates the Smartphone to face it's camera forward and starts streaming video using DirectShow.  This allows you to see where you are going (although it can be fairly difficult to navigate with this tunnel vision).  Eventually I will use Managed Direct3D for the personality mode, giving WiMo a more dynamic personality.  I'm also planning to use the camera mode for computer vision so that WiMo can start to figure things out for himself (aka be autonomous).  

WiMo is learning to make conversation and respond to voice commands via some new prototype APIs in Voice Command.  These APIs are not available yet, but we are looking to make them available in the future.  WiMo can respond to his name, tell jokes if asked, and even dance!

Yes, that's right, WiMo can dance!  He uses the State and Notification Broker to time his dance moves to the music.  One of the many (100+) predefined states available in the S&N Broker is the track time (in milliseconds, although it is not updated this frequently) of the song.  WiMo gets an event whenever the track time is updated and then can determine which dance move to do.  Currently WiMo dances the hokey pokey. 

Speaking of events, WiMo is built primarily in C#.  I had to write a native layer for DirectShow, but i use it via C#.  So, except for some of the support libraries, everything is done in .NetCF. 

Want to see WiMo in action?  Check out the Channel9 video on WiMo
Want to build your own WiMo?  I'll be posting step-by-step instructions on how to build WiMo, even if you have never worked with electronics (I had little experience with electronics before I started building WiMo).  I'll be posting what parts I used, where I got them, and the source code so that you can start playing as soon as possible. In the meantime, if you have any questions, please let me know!  VISIT HERE FOR MORE

4月20日

Sortable, Pageable, Cacheable GridView Control using a SQLDataReader in ASP.NET 2.0

Cool ASP.NET 'trick' I've been working on..
Im  taking a DataReader and slammin' it into a DataTable, but the idea is that I want to cache the DataTable in the Page Cache object, and create
DataViews of the data in the table for paging and sorting purposes.

This way I get a quick forward-only DataReader on the Page Load, with sorting and paging capabilities, in a biz-tier
data object, and the class is reusable for other biz-tier objects.  (I have thousands of records in the database, so less time loading, and less round-tripping for paging/sorting, is essential.)

In order to do this, I wanted to have some recordID's for the paging, and in order to ensure we never clash with another PrimaryKey from the underlying
database (DataReader pull) I went with negative numbers. So I created an autoincrement column, filled the DataTable with the DataReader Schema first,
added the autoinc column, THEN fill the DataTable so I don't lose the autoincrement column.

The DataTable will now get returned to the caller, where I will slam it into the cache and create views, etc. off of it.  Sweet :)

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.Common;
using System.Text;

namespace payc_bl
{
    /// <summary>
    /// Utilizes generic DBDataAdapter to return DataTables from DataReaders
    /// </summary>
    class PAYCDataTable : DbDataAdapter
    {

        public int FillFromReader(DataTable dataTable, IDataReader dataReader)
        {
            // Create a DataColumn and set various properties.
            DataColumn myColumn = new DataColumn("recordID");
            myColumn.DataType = System.Type.GetType("System.Int32");
            myColumn.AutoIncrement = true;
            myColumn.AutoIncrementSeed = -1;
            myColumn.AutoIncrementStep = -1;
           
            // Fill the DataTable with Schema, add the column, and set its Primary Key
            dataTable = this.FillSchema(dataTable, SchemaType.Mapped, dataReader);
            dataTable.Columns.Add(myColumn);
            DataColumn[] keys = new DataColumn[1];
            keys[0] = myColumn;
            dataTable.PrimaryKey = keys;
           
            // Fill the DataTable with the DataReader data
            return this.Fill(dataTable, dataReader);
        }

        protected override RowUpdatedEventArgs CreateRowUpdatedEvent(
        DataRow dataRow,
        IDbCommand command,
        StatementType statementType,
        DataTableMapping tableMapping
        ) { return null; }

        protected override RowUpdatingEventArgs CreateRowUpdatingEvent(
        DataRow dataRow,
        IDbCommand command,
        StatementType statementType,
        DataTableMapping tableMapping
        ) { return null; }

        protected override void OnRowUpdated(
        RowUpdatedEventArgs value
        ) { }

        protected override void OnRowUpdating(
        RowUpdatingEventArgs value
        ) { }
    }
}

3月21日

Talking about The Official Sharing Folders Cheat-Sheet

 

Quote

The Official Sharing Folders Cheat-Sheet

 guest posted by Jasmine

 

Hey there – I’m Jasmine, and I’m a Sharing Folders addict.  (I also happen to be a WLM Program Manager who works on Sharing Folders, but hey, who’s counting?)  Like vampirism, the common cold, and the sweet, sweet smell of fresh-baked cookies, love for Sharing is one of those things that can’t help but spread far and wide.  Plus, sharing stuff with your buddies is good clean fun – just ask this guy.

 

Hats-off to those of you who’ve been adventurous enough to test out Sharing Folders in our beta.  For those of you who haven’t, there’s still room in the Sharing Folders Club!  We’re all out of decoder rings, but click that “Share files” button in the conversation window and watch the magic happen.

 

As you can imagine, those of us on the Sharing team know all the ins and outs of this guy by now.  So whip out those Sharpie pens and pull up those sleeves, ‘cuz here’s the official, WLM-endorsed Sharing Folders Cheat-Sheet .


In order of increasing obscurity

  • Drag & drop files into the sharing window & keep the originals intact
    • We wrote some super-special handy code to copy, not move, the stuff you drag and drop into a sharing folder, so you’ll still have those original copies.
  • Drag & drop files onto a buddy in the main window
    • Drag & drop has been in the main window for awhile now, but we decided to take that guy and use him for our own twisted devices.  Now, if you drag & drop files on a sharing buddy, they’ll be added automatically to your sharing folder.
  • Click "Add Files" in the sharing window and multi-select files to share
    • Hated that old file-transfer dialog that made you select files one at a time? 
3月14日

YSOD not BSOD

I laughed so hard at this entry by Scott which referred to the "Yellow Screen of Death"
Brother I feel for ya, cause i am having the exact same problems today!   (Glad you went first..)
 
I have been swamped with work.. from gardening, to beach family day, to hardware upgrades, to remote debugging failures, to Barney (of course) and more family interventions...   like Cynthia's lost hand-carry luggage (Dont worry dear, we found it in Singapore and it's on the next flight to Moscow at 10PM Wednesday..)
 
 I'm glad we can now call it "YSOD", instead of "BSOD" (which by the way had complete developer frenzy over the term meaning black screen of death or blue screen of death.. eminating from Windows (one) days.  Speaking of which, I have a copy  of the original windows.. in all it's 711kb (yes, kb) glory.. Hit me up for it if your super interested..   It has a killer to do list..  (Taken from 'dothis.txt' in the orignal zip..
 
TO DO                PRIORITY
Shop for new suit        B
Phone dentist            C
Take car in for tuneup   A
Make plane reservation   B
Pick up theater tickets  B
   How much?
Contact realtor          B
Clean garage             C
Mow lawn                 B
Plan spring garden       B
Schedule vacation        A
Read "War and Peace"     C
Write Grandma            C
Buy present for Martha   B
Talk to Fred             B
Take out garbage         B
Call piano tuner         C
 
I guess tasks havent changed much over the last twenty years..  How would you update this list for the upcoming release of Vista? And how many piano tuners really are there in the world?  I guess only the YSOD knows for sure. :)
 
2月27日

Whats the Buzz, Dett?

Hey all.. Well its been like a week since I’ve blogged, although I have been around... 'under the covers' half the time, and the rest being a code-zombie for my new employer. I have been having some fun, and of course headaches too, dealing with some php development I have been doing, amongst other things.

Now, those of you who know me well enough may know that I am totally proficient in PHP coding, not just C# and ASP.NET. In fact, I am even using the 6.0-dev version of PHP, in all it’s pseudo-OO glory. (You can download it here). My favorite IDE, as many of you know, is PHPEdit. However the new 2.0 variant is a bit buggy in it’s debugging features (go figure?) and it is not as friendly to browser debug as it was before. However, Sebastien has created a great product that I have used for a long time and the IDE is still top-notch, and the embedded debugging in the IDE works quite well.. The only drawback to that is not being able to inspect POST, SESSION, COOKIE variables on-the-fly. The documentation features are really cool though, and the projects are a whole lot easier to work with.. plus the class browser is very time saving! Just click within the call to a function.. Shift+F12… and voila.. your there..

Speaking of cool php stuff, check out what a former Linux disciple of mine did with his PHP skills. Perhaps I have been a catalyst to Junrey in first checking out PHP long ago? But at any rate, the developed PHPTarsier database generics class seems pretty cool and I am sure will get worked on more as time allows. If your into PHP and use a database, you should download it and give it a try.

Now I am a stickler for running PHP in IIS as an ISAPI module, and as part of my development I needed to replicate Apache’s mod_rewrite capabilities.. so I ended up finding an excellent product over here at IsapiRewrite. I installed it and it seems to work flawlessly, except that when I remembered I switched over to Fast-CGI prior to installing, I ended up switching back over to ISAPI.. and low and behold my true headaches began.. IIS would no long switch to ISAPI.. and I was having dreaded COM+ errors. So I am in the process of reinstalling IIS (thank goodness it’s a older devbox..) but I should have learned my lesson in the first place: That being.. use a VPC with Gentoo/FreeBSD and Apache.. so you can throw it all away if need be anyway. ;)

Needless to say, my upgrade forays with ImageMagick and the latest copy of ACDSee Pro 8 were negated quickly.. so here I sit blogging while the headaches continue in the background.. Sound familiar? Hehe

On the “I really do have a life” front.. I went with the kids to the beach yesterday, and did some basic snorkeling. It rained pretty hard and was overcast most of the time.. We stayed only a few hours too, leaving before 6PM even.. a new ‘day at the beach” record for my wife and I with the kids. (Cynthia posted some pics on her blog site, and if you have a Yahoo ID, you should be able to check them out too.) Guess what though? I’m freakin sunburnt to the hilt on my shoulders, face and upper back. I look hot as heck, but it is a tad painful. I was shocked.. Musta been the killer Philippine UV rays and the good ‘ol ‘ocean refraction effect’. It was a bit nice to take some time out from reading about image manipulation with the PHPThumb() class library.

I also got some time to AvantGo Time Asia’s article on the People Power movements here in the Philippines. This is quite an interesting article and worth the read, no matter which side of the fence you may choose to be upon. Low and behold there have been some more developments in the soap opera, with more repercussions with the failed coup attempts. However, many of the folks ‘in the trenches’ seem discontent. Even our local newspaper has been reporting about how “Arroyo has “killed the spirit” of “people power.” I find this remarkable ironic considering Mrs. Arroyo herself has gained the Presidency through People Power. But I leave this for a whole other discussion in another lifetime. Philippine Politics just totally disinterests me.

Just as I was contemplating all this stuff, my daughter interjected.. “Daddy, What is Origami?” OMG!! “Where did you hear that, Dett?” .. I about freaked.. Was she reading my IE history? As it turns out, Dett was actually interested in finding more out about real paper Origami.. and not the about-to-be-very-hyped codename buzzword at Microsoft. If you don’t have the 411 yet, Origami is set to be announced March 2nd, and is touted to be the next holy-grail of on-the-go, do-it-all computing devices. Seems my daughter is always in-tune with the latest buzzwords more than I anywayz.

So what to do? Bake up some killer cookies. I made some awesome chocolate chips, that my wife said “Are to die for” hehe.. thanks Cynch.. and the next batch even used some Kissables. Makes me wanna be Kissable with my woman.. hehe.. oh well.. still gotta work..

That having been said.. there are some new things going on over at Microsoft for web developers. First is Mix06, in Vegas, that promises to be loads of interesting, with a contest in CSS design. Channel 9 also has a new contest that has 2 MSDN Team System subscriptions up-for-grabs. There’s also a cool video on Windows Vista Collaboration and you can find out more about Windows Vista (and its multiple faces) online now that the Enterprise CTP went out.

So, while we are at it.. I had a JavaScript question this week, that was so basic it killed me.. How do you submit a form in php, but prior to post, change the action. Yeah? Well, I did all that function stuff and guess what, it just don’t work in my IE6. As in no go. Firefox hums along fine.. and I couldn’t find the answer in the myriad of FAQt’s online either. Resolution: Recode the forms in PHP and don’t rely on the JavaScript. Safer too. J

I also came across a cool DHTML menu generating tool, over here at OpenCube

Last but not least… I’d like to know if any of you out there find my ramblings about devstuff the least bit interesting? If so, do me a favor and leave a comment below or IM me. It would help me gauge just how much of my “I have no life” blogging really helps. ;)

Have a great week! -Eric


2月19日

All about style...

GREAT channel 9 video and a MUST READ comment about developers vs. style..
BTW.. this video showcases the little woman who is responsible for your Windows Vista wallpaper, amongst a whole slew of other eye candy. 
 
Just for those wondering, I agree that style is extremely important. We aren't sexy without it, and if we are to truly bring things to 'the next level' you should be right at home at the local Starbucks ordering a Grande Macchiatto with Almond Roca syrup.. coz that's style. 
 
Thirsty?  I am. ;)
 
On another note, Bill Gates gave his second interview over at Channel9, and I'm glad to know he likes engadget amongst other things. (Heck, it made Google's mail RSS list too... )  I agree that software needs to step up to the plate and solve some real problems (not just killing terrorists in Swat 4 or paranormal activity in F.E.A.R.)  I also like what they have done in Office 12.. the UI DOES look more user-friendly but sad to say the reference tools leave something to be desired, especially since Bill himself wants to give kids something they can really learn with.  That having been said, how about that $400 price tag for a Google Earth Pro key??
 
Last but not least, I love my wife. She is amazing, and a bit whack at the same time. She talked the woman I had told not to chat with me back into at least being conversational with me, then watched some poor bastard of a UK guy spank off on video chat. Ain't life great??  Well, to make a long story short, we had a nice dinner with the kids tonight, and watched The Prince and Me II. (Kinda cheesy, and where's Julia Stiles?? She made that movie what it was IMHO.)  
 
Well, TTFN
 
P.S. I had some Seattle offers, but seems I may forgo the journey after all, and Cynthia's Grandma dies this Wednesday, so she will be with me for a few weeks more before venturing off to Mother Russia. ;-)
 
All in all a good day.
 
10月19日

Service Oriented Architorture ;0

Brian Groth and Mark Berman can be found in building 25 at Microsoft. They work across the hall from a datacenter (not everyone at Microsoft has so much hardware within arms reach). What caught our attention about Brian and Mark? Well, Brian sent Channel 9 an email which you can just read:

I work in the Redmond MTC (Microsoft Technology Center) and we have a very interesting Service Oriented Architecture solution that uses InfoPath, BizTalk, ASP.NET Web Services, RPG on an AS/400, CICS on a Mainframe, J2EE on WebSphere, Pocket PC, SQL Server, Speech Server, and MOM. It is really a solution to put web services in front of these non-Microsoft apps, and use MOM to monitor events and play back web services, and use BizTalk to orchestrate everything together.

Here is a very rough idea of what we have:

  1. We have the following legacy “backend” systems: (they were written for use by a single user, but we now have them working for multiple users):
    1. RPG application on an AS/400. I think it interacts with a DB2 database on the same box, but would need to verify that.
    2. WebSphere (J2EE using DB2) on UNIX (an RS/6000 box I think).
    3. CICS application on an IBM Mainframe (MP/3000 running OS/390).
  2. These are all “front-ended” by ASP.NET Web Services, which can pop events (when errors occur) to the event log, which are then monitored by our MOM server. We also use a playback feature to monitor what’s behind the web services so we know if these legacy systems go down, even when nobody is using them.
  3. There is also a SQL Server used to keep track of the status of orders in the AS/400. This is because we also have a Pocket PC application that interacts with a web service to change the status of the order (New Order, Allocated, Picked, Shipped). 
  4. We use an InfoPath form to kick off a purchase order, which starts everything into motion.
  5. We also record the order in SAP after everything is done.
  6. We also (soon) use Speech Server to call someone with the status of the order.
  7. Various BizTalk 2004 orchestrations control the logic of routing the order through the different systems.

Do you grok this? Well, then you'll enjoy seeing Brian and Mark's solution.