Sponsored Links

jobs!

Online Chat

Use the window below to chat with me (if I'm online ...)

Use the edit nick field above to let me see your name.

cazh1: on Business, Information, and Technology

Thoughts and observations on the intersection of technology and business; searching for better understanding of what's relevant, where's the value, and (always) what's the goal ...

Monday, June 16, 2008

Data Visualization: 'Life' of Open Source Projects

Data Visualization: 'Life' of Open Source Projects

Part of the "art" of communicating IT and business abstractions - technical challenges, project roadmaps, budget performance, customer relationships, IT effectiveness - is landing on the right visualization. A picture tells a thousand words, and if you can draw the picture well, your target audience will grasp these concepts quickly, and (potentially) get insights that were otherwise difficult to attain.

I have a large backlog of web links to point to, posts to write that I'll probably start cutting into, now that I've seen this latest bit of visualization ... via Slashdot ...

    A student at UC Davis has created some stunning visualizations of open source software contributions, including Eclipse, Python, Apache httpd and Postgres. From the website: "This visualization, called code_swarm, shows the history of commits in a software project. A commit happens when a developer makes changes to the code or documents and transfers them into the central project repository. Both developers and files are represented as moving elements. When a developer commits a file, it lights up and flies towards that developer. Files are colored according to their purpose, such as whether they are source code or a document. If files or developers have not been active for a while, they will fade away. A histogram at the bottom keeps a reminder of what has come before."

As a developer, I can draw connections between the narration of significant events and the "flow" of objects. I've used these tools/platforms for some time now, and the story told by the animation connects nicely with my understanding of these tools' "personalities" - gives some insight on how they "grew up".

Python: This one fits my understanding of a typical open source project; lots of work by one primary, maybe one or two secondary developers, with fits and starts, bursts of activity. Over a period of time, a limited number of additional authors contribute, and things slowly expand until critical mass is hit, and Python is released to the public. Then, a flurry of activity as the popularity takes off ...


code_swarm - Python from Michael Ogawa on Vimeo.

Apache: I was fascinated to see this project start off as an exercise in documentation - and stay like that for the longest time (code doesn't appear until about a third of the way through the movie). Like Python, Apache is a focused platform/application, and had a fairly concentrated core of developers and modules - unlike ...


code_swarm - Apache from Michael Ogawa on Vimeo.

Eclipse: I watched this movie first, but it belongs last in the To-View list. Eclipse is a wide-ranging platform with a large number of modules/functions - and a correspondingly large number of developers. It's amazing to think that the overall project could maintain such a high-quality, unified vision.


code_swarm - Eclipse (short ver.) from Michael Ogawa on Vimeo.

I'd love to see the Linux video ...

Previously ...

Technorati Tags: , , , ,

Invisible Technorati Tags: , , , , , ,

Labels: , ,

Sunday, May 18, 2008

Home Development Workstation - Part 3

Home Development Workstation - Part 3

See also ...

Ok, here's where we put the rest of these boxes, switches, wires, and other assorted doo dads in their place. Again, the witty reader will note that I am following along with Jeff Atwood's Build a PC posts from last summer, just adding some color commentary and my own personal notes.

Hard Drives, Optical Drives

  • When disassembling the case, I found one of the silicon grommets on the lower drive cage was a bit munged. Antec is great, they think of everything - the bag o' miscellaneous parts had a few spare ones.

Click on the picture for a full-size image!

  • The drive cages in the Antec P182 are pretty sharp. Those silicon grommets are an anti-vibration feature. It took me a bit to figure out exactly how to install the actual drives - this picture should help ...

Click on the picture for a full-size image!

  • Note that I put my start-up Raptor in the first position, and the 500GB Caviar in the third position. I had talked to some folks about doubling up and mirroring for security, and I may still do that in the future - just leaving space, seems like the decent thing to do.
  • I could have stayed consistent with the clean red SATA cables that came with the motherboard - but that blue cable from the Raptor box was just so cool looking ...

Miscellaneous

  • The P182 has USB and FireWire ports located up front - the cables for those are in the same bundle as the leads for the LEDS. The motherboard came with additional hardware to make these "visible" out of the back of the machine - more extra stuff to stash with the leftovers.
  • There's also a pair of wires for audio hookups - HD audio and AC'97. I found something on the motherboard for the HD Audio, but I'm drawing a blank on the AC'97 connector. I know it's high-quality audio for something ... ah well, a future project.
  • For optical drives, I took an idea from the Tom's Hardware walkthrough, and put in a pair of DVD-RWs.
  • Supplying power to the fans and drives is just a question of picking out the right one from the myriad spilling out of the Corsair. The real trick was hiding the cables and closing up the case - an adventure in folding. There are plenty of tie-up options built in to the Antec, which made the task easier - it's really a super case.

Final Thoughts

Well, now it's finally ready to go. As noted last time, I know it boots - now I just need to download the Ubuntu Hardy Heron CD ISO and get installing. But that's a different post - possibly. This blog is meant to be geared towards the application of technology to business, and vice versa - not a tech haven per se.

So what observations can I make as I survey the piles of spare parts and packing materials?

  • Evolution is a Powerful Force for Change: The advancements made in something as mundane as the case that holds it all still delight me. Slide out drive cages, anti-vibration and noise reduction all over the place, and spaces to make cable management easier. If you haven't looked at the guts of these machines lately, you will find that the "state of the art" never stopped innovating and improving.
  • Standards-Based Hardware: Making the "Case" for Standards-Based Software? Ever since the days of the XT clones, these machines have been designed for interoperability with different parts manufacturers. Still, the wide variety of vendors, coupled with the degree of fit for all of these components - makes a strong value statement for available and accepted standards. When all manufacturers agree on the base requirements, and differentiate based on features, functionality, and price (all together), the result is higher-capability machines for a very reasonable price. Makes you want to do the same with all of the systems getting designed and built at work ...
Previously ...

Technorati Tags: ,

Invisible Technorati Tags: , , , ,

Labels: ,

Thursday, May 15, 2008

Home Development Workstation - Part 2

Home Development Workstation - Part 2

See also ... Home Development Workstation - Part 1

If You Build It ...

For starters, I give major props to Jeff Atwood's series on building a PC, because the step-by-step assembly notes, and the overriding "calm down, it's like Legos!" tone ... all very comforting. I tend to be a "ready, fire, aim" kinda guy on my home technology projects, so a little common sense around the electrical equipment is always good.

I won't replicate all of his build-in-process steps or pictures, just the highlights. One thing you will need is a decent work space - don't try to build this on the floor of your den/home office.

The only tools I needed were a Phillips screwdriver and a little knife - lotsa packages to open!

Check Out The Case

  • I was amazed by the heft of the P182 - it felt like a loaded PC, not an empty shell. Can't wait to hoist it around when it's full of components ...
  • Some extra work: a nice note from the manufacturer reported a chance that the fans misbehaved at low speeds. This was a defect they couldn't catch until after assembly, so they threw three extra fans into the box, just in case. I didn't want to mess with it later, so I swapped out two of the three - one was too difficult to get at, I'll just take my chances. Plus, now I have three spares (more junk for the closet).
  • Before you start adding components to the motherboard, dig out the back panel and "dry fit" the motherboard and back panel into the case. This wasn't entirely plug and go, I had to fiddle around with the various tabs and knockouts to get it to come together. Take the motherboard back out, now we've got some tabletop work to do.

Building Up the Motherboard

  • The memory sticks were bigger than I anticipated - and yes, I double checked, it's physically impossible to put them in backwards
  • Slip the processor into the slot on the motherboard per the directions - very simple stuff.
  • The processor (CPU) is dwarfed by the cooling fan (Standard CPU Fan) that comes with it ... but that's not a real cooling system ...
  • ... I was genuinely flabbergasted by the size of the IFX-14 CPU cooler (Main Heatsink). The picture below sizes it all up, next to some real world objects you may be more familiar with. In retrospect, I'm not entirely sure I needed the aftermarket CPU cooling system, but I appreciate the heat problem inherent in these types of machines, so I'll just play along.

Click on the picture for a full-size image!

  • Consider going through the entire heat sink installation "dry" - it involves sticky pads, screws and posts, and thermal paste (!). The instructions are capable, but not entirely idiot proof. The dry run is important, because we've now come to ...
  • OOPS #1 - The IFX-14 CPU cooler also comes with the IFX-10 backside motherboard cooler (Backboard Heatsink) - nice additional cooling, I suppose, but as I went through the dry fit to check how things line up in the case ... erp, nope, the IFX-10 sticks out too far. Some geeky desktop jewelry, I suppose, but the big tower fit just fine, so the IFx-10 is out, and on we go.
  • Another gotcha - attaching the fan. Slightly tricky, and the installation illustrations (which had been excellent to this point) left me with a puzzle. I finally figured it out, so here's a pic to show exactly how to thread those wires (fan clips) through the holes. I've also called out the proper orientation of the anti-vibe strips - also, not called out well in the installation instructions.

Click on the picture for a full-size image!

Two bits of hindsight, for your benefit:

  • Now that you've got the fan attached - take it back off. You'll see why in a minute.
  • Some system fans have a speed sensor for control - and the motherboard may have a specific power connector for that fan. Find it before you screw everything in place - might be hidden underneath Gigantor-sink.

Back to the Case

  • The power supply fit is tighter than tight - aided by the anti-vibration strips inside the cage, I am sure. For this step, you will need to take both sides of the case off.
  • Leave all of the power cables trailing out the nearest side of the case. As we install components, we'll want to be crafty in how we thread the cables, to keep the interior as nice and clean (and maintainable, and expandable) as possible.
  • Finally - in goes the motherboard. It's easiest to get in there with the case lying in it's side, but now I've got multiple power cables hanging out back there, so I'll just have to make do.
  • The case came with a bag full of a wide variety of screws, and no pictures in the documentation - but the bag-within-a-bag, labled MB Only, was helpful. Put as many mounting screws in as you can reach - that heatsink gets in the way of one or two.
  • Power supply to the motherboard - two cables! You'll be able to hide most of these cables under the motherboard - snake them up through the available openings.
  • OOPS #2 - This is where I had to (temporarily) remove the fan. The CPU power supply (cable #2 for the motherboard) "conveniently" plugs in right below the heat sink fan. I got it all to fit, but man, I'm really starting to rethink this whole aftermarket CPU cooler idea. Note that this is no slouch against the performance of the device; it was rated best by Tom's Hardware - but it definitely is a tight fit.

Click on the picture for a full-size image!

They're at the Post!

Why yes, I _am_ following Atwood, step by step. Trying hard not to duplicate his pictures, but augmenting his play by play with mine. Here's the final turn for today ...

  • Install the video card. I'm keeping it simple, with a single GeForce 8600 GTS - supports dual monitors, which I dig, but I am not the hard core gamer.
  • Power it up, and see if it starts.

Ok, full disclosure here - I unboxed the flat screen, threw on the keyboard, hit the power switch, and ... nothing. Crestfallen, I reviewed everything, checked the manuals, and still nothing. Actually, I got an LED on the motherboard, but no video card fan, no POST. I wondered if the power-on LEDS are showing anything - so I had to find those. Opened the front door of the case and saw ... the power switch. Yup, there is a case power switch along with the one on the back of the power supply. I think one of the on-line tutorials I read had pointed this out already, but I spaced it out. Immediate success followed ...

... and here I type. I'm done for now, that was probably 2-3 hours of effort, elongated by my play-by-play blogging. Still, in retrospect, not too difficult.

Next time - fill up the case!

Previously ...

Technorati Tags: ,

Invisible Technorati Tags: , , , ,

Labels: ,

Tuesday, May 13, 2008

Home Development Workstation - Part 1

Home Development Workstation - Part 1

Why

I think that every techie should go through the experience of building up a desktop workstation from the ground level. Maybe it's because I date back to the days of the PC XT, when computer support duties regularly had us tearing down cases, changing jumper settings and plugging in individual chips for memory expansions. Mainstream p0wnership of the desktop's guts may also be a dying art form (notwithstanding) - in the days of ubiquitous WiFi, shrinking notebooks, Blackberries and iPods. Cloud computing may liberate us from access to information, but I'm interested in creating and maintaining how that information will be connected, managed, and accessed. In other words - I want to write, not just use, software!

Specifically I have a long list of development projects I've been planning (ie. dreaming about and procrastinating), dealing with a wide range of technologies (semantic web, mash-ups, mobile, social networks, SEO, etc.). I also want to take a much deeper dive into platforms other than Windows; it's clear that Linux, FOSS, and Apple need to be contemplated as part of any organization's environment. And, since I prefer the comfort of hands-on experience when talking about technology solutions for business issues, I figured it was about time to jump in.

So this will be the story of two things - homebrewing a workstation in the 21st century, and the switch from Windows to Linux. Should be fun ...

Prior Art

Of course, step one for most technology projects seems to be find something close, and work it over to meet your needs (techno-jazz, riffing on prior art). It's not difficult to locate how-to content for building a PC by mail order, and my spec is based on two excellent examples. Tom's Hardware (TH) is by far the best resource for drilling into details of the components. TH also has an (apparently) annual series on building a PC from scratch using current state-of-the-art components. In addition, I've borrowed heavily from a Coding Horror (CH) series from last summer - Atwood's detailed notes and photos during the build will give me a lot of guidance when doing the actual assembly (yes, I even aped his photo style - sincere flattery, Mr. Atwood!).

As I began to surf and spec the various components, I noticed a trend with these and other "build your own" mavens. The articles are always geared towards the gaming enthusiast, trying to squeeze the quietest performance and the highest power for the least amount of dollars. I remain at a loss to explain why anyone needs two $600 graphics cards, and all the fans required to keep the whole thing from melting down. Most of the changes I made to the specs from my model machines dealt with this; a dual-monitor development workstation is an absolute must, but I wanted multiple windows of Eclipse and Firefox running - not Civ and Doom. (although I nearly changed my mind on the video stuff when I saw this sample of user interface ideas in the works for coming version Ubuntu.)

Deets

I'll spare you the details of the mixing and matching - I'll just give you my shopping list, with some callouts for the important components. Note that I did the "good shopper" bit (TH was good for research, and cNet did a decent job of letting me see the competition), and went to a couple different sources for all these parts. I checked prices at Newegg and Amazon for most of the stuff, but had to search hard for some of the components. Note that all prices are just snapshots from when I placed the orders; I started and stopped this project a week or so ago, and when I came back to some of my shopping carts, availability of some components changed considerably. Suggestion: carve out a long afternoon to research the components, price shop, and make the purchase - all in one sitting.

Case Antec P182 Gun Metal Black Computer Case N82E16811129025Newegg.com$ 139.99
    Other cases might be better for the game enthusiast looking for ultimate quiet; this is just super functional and flexible
Power Corsair CMPSU-550VX ATX12V V2.2 550W Power Supply N82E16817139004Newegg.com124.37
Motherboard MSI P6N SLI Platinum LGA 775 NVIDIA nForce 650i SLI ATX Intel Motherboard B000NEFVA2 Amazon140.71
    I freely admit to not being a motherboard expert. I stuck as close to the examples from TH and CH (ca. 2007), but had to evaluate "state of the art" (ca. 2008) . As such, this component proved the toughest to locate - shows how fast technology changes
Processor Intel Core 2 Quad Q6600 2.4GHz LGA 775 Processor Newegg.com219.99
    I typically go for the second-best processor available. The difference between the 6600 and the current king of the hill was hundreds of dollars; since I'm balancing performance with price, it was an easy decision. Note that I didn't even consider an AMD processor - no logical technical reason, just that I've been an Intel guy all my life ... it's a comfort zone thing
CPU Cooling Thermalright IFX-14 CPU Cooler xoxide.com79.99
Scythe SY1225SL12M Newegg.com8.99
    Never knew CPU cooling was such a science - another excellent Tom's Hardware write-up
Video Card Scythe SY1225SL12M N82E16814130084Newegg.com119.99
    Another component that took a long time to research. I gotta have dual monitor support, but I didn't need the two-card, super-high-tech video processing that the TH and CH machines would deliver. (This step was a bit more difficult because I'd recently seen Ironman (hhh))
Hard Drives Western Digital Caviar SE WD5000AAJS 500GB 7200 RPM SATA 3.0Gb/s Hard Drive N82E16822136178Newegg.com89.99
Western Digital Raptor WD740ADFDRTL 74GB 10000 RPM SATA 1.5Gb/s Hard Drive N82E16822136220Newegg.com149.99
    I considered dual drives and mirroring for both the system disk (Raptor) and data disk (Caviar), but decided to (maybe) add that later. It's so amazingly cheap ...
    Coding Horror raves about the Raptor as the boot drive (OS plus common programs). I hope to spoil myself on boot times / startup, since my Windows notebook takes eons ...
Memory (2x) CORSAIR XMS2 2GB (2 x 1GB) 240-Pin DDR2 SDRAM DDR2 800 (PC2 6400) Dual Channel Kit Desktop Memory Model TWIN2X2048-6400C4 N82E16820145034Newegg.com137.98
Optical Drive (2x) Sony NEC Optiarc 20X DVD±R DVD Burner with LightScribe Black SATA Model AD-7191S N82E16827118004Newegg.com55.98
    Taking note of a comment from TH. The optical drives are so inexpensive (I remember when a floppy drive cost me 25 bux!) that I picked up two, to speed up my media projects
Display Dell SP2208WFP 22 inch Widescreen Flat Panel Display with Webcam Dell.com314.00
    I didn't do a ton of comparative shopping when picking up the display. I had $100 Dell gift card - a nice "discount" that I couldn't pass up
Total: $ 1,581.97

Had to insert a picture of the delivered components - it just felt like the right thing to do. It was kinda like Christmas! (props to Atwood for the idea)

Click on the picture for a full-size image!

Next up ... building the box ...

Previously ...

Technorati Tags: ,

Invisible Technorati Tags: , , , ,

Labels: ,

Sunday, April 20, 2008

Desperately Needed Features for eMail Clients/Servers

Desperately Needed Features for eMail Clients/Servers

Via Knowledge Jolt, here's an article from KM world with some interesting statistics about folks engaged in enterprise search - but it was a tangential quote from the author that caught my eye. When asking corporate knowledge workers about using public Internet search engines, she found that ...

    ... although only 2 percent [of corporate searchers] said they used the company intranet, 13 percent stated that they were looking for internal company information. That's puzzling.

Not puzzling to me! They're looking in their e-mail inbox!

It's a common hassle of IT departments - mailbox management (and the lack thereof). Everyone's inbox seems to have thousands of documents, gigabytes of information, and zero organization or structure. There are a couple of interlocking problems here:

  1. Backup: IT is typically expected to cover everything - and after a few years, a few thousand e-mail accounts, and a few gigabytes apiece, well that's an awful lot of tape. More to the point - your backup window gets smaller and smaller, as you watch tape after tape load up with what you know are incredibly redundant inboxes.
  2. Upgrades: Heaven forbid you try to convert from one mail server to another, or go through a major upgrade. The migration process will go on forever, because you have to convert all of that ... stuff.
  3. Document Retention Policies: Something new from last year - the idea that a company must be able to produce any e-mail / electronic document requested by a court. Please, no eMails (IANAL) - I'm not up on all the details here, I just know this is one of the reasons why we can't simply delete all eMails older than six months.

To solve problems 1) or 2), IT departments will attempt to impose a size limit of a few gigabytes. This will be met with a few typical reactions ...

  • 10-15% of your users will far exceed the targeted max inbox size. This is the typical Pareto situation, where the storage needs of a few outweight the needs of the many. Worse yet, this group is typically composed of the Marketing department (huge attachements), everyone in Legal (never delete anything, lots of document scans) and a collection of significant Executives (including the CEO) who get cc'd on everything and have zero time or interest in organizing ephemera.
  • Invariably, you'll get pushback along the "disk is cheap" line. Last month I bought 750GB of storage at Best Buy for $180 - why can't you throw some cheap disc in the old data center? Unfortunately, those that have time to provide these helpful suggestions typically don't have the interest in hearing about the growing stack of backup tapes.
  • Bottom line - there's simply no good business case for taking time away from anyone's busy day to organize their desk; they either do it or they don't. Mailbox quotas are IT's way of trying to tell you to get your life in order - and that is pushing rope, completely ineffective unless the person actually wants to change. It doesn't grow revenue, and it doesn't save cost (well, not much).

Now, I don't have any ultimate answers here, but I am trying to lay out the basic premise behind what I think are two very simple ideas that would have a huge impact on the growth of corporate America's eMail-boxes. I gladly invite someone to tell me why these things aren't features of every mail server; of course, I'd rather have someone to tell me how to get this done!

Proposed: Eliminate the Reply All feature: Or, at least make sure the default option is Reply to Sender, and put at least four mouse clicks and/or keystrokes between the casual eMailer and the option to share their wisdom with their cohorts on the To: line. We've all seen annoying threads expanding in our inbox - it must be the default! I say that only partially in jest - I have accidentally hit Reply All a few times - nothing too embarrassing, but it was, a bit too easy to make the mistake.

Proposed: When replying to a e-mail that sports a file attachment, mail clients should delete attachments from the reply by default. It makes little sense to reply to a note and return the original. If you've made changes, you'll be attaching your updated file anyway. I've seen way too many e-mail responses that say, in effect, "I agree". No need to send it back, just tell me you're OK with this. Of course, they'll hit Reply All (see above) because for some reason, I need to be informed that you agree with a copy of the thing I already have a copy of ...

These two options, I believe, would quickly eliminate the majority of useless duplication in corporate eMail servers. My last suggestion, is less about prevention, more about cleaning things up. Of course, I wouldn't be surprised if something like this already exists; I can even imagine how to write it. I just don't have the time ...

Proposed: I want a utility that scans each mail thread in my account, and selects the earliest occurrence of an attachment. Then, the thread is traversed, and all duplicates of that document are replaced with a text reference to the e-mail that contains the original. A simple concept, this would certainly save me a lot of manual effort needed when cleaning out my own inbox.

Any other simple ideas out there for mail management?

Here are some more recent eMail stuff from my blogroll ...

Previously ...

Technorati Tags: , , , , ,

Invisible Technorati Tags: , , , , , ,

Labels: , , , , ,

Sunday, April 06, 2008

Why are those Old Programmers so slow in picking up on the Intarweb?

Why are those Old Programmers so slow in picking up on the Intarweb?

A significant difference between us old-line IT coders and the new graduates is the variety of our platforms and tools. I'm not talking about the large number of languages and tools learned over the course of a career - we all have a healthy collection of certifications and acronyms peppering the bottoms of our resumes. I'm talking about the amazing array of stuff required to get development done on a single project, "right now".

Over the past few weeks, I've been doing a little development at work. This is my idea of fun - in between the PowerPoints and project status meetings, I try to sneak in a little hack or two. Actually, I'm not doing the heavy lifting on this one; I'm working with one of the guys on my team, and we're putting together some ASP code to generate RSS feeds from the SQL database we use to track our projects. He's done most of the raw research and the base coding, I'm just prettying up the final package.

As a department, we're moving towards Microsoft as a strategic platform, but we're certainly not there yet - so this is definitely a skunkworks-type project. For this "fun stuff", we're using technologies that will plug nicely into our general strategic direction, but at this point there are no standard toolsets or integrated development environments in broad use.

So, to get the job done this afternoon, I've been cycling through the following ...

  • In window #1, editing the .ASP file with Crimson; source files are sitting on the development server
  • In window #2, testing code using IE ... no integrated debug environment for my ASP syntax, but I manage (just a little trickery - switches flip between RSS and HTML output)
  • This is just debugging the basic code - to validate the RSS XML, I View Source from IE (opening window #3) and cut and paste into the W3C validator (window #4)
  • For the SQL queries and database hacking, I've got window #5 for Enterprise Manager and #6 for Query Analyzer
  • After debugging, I push to the test server manually, using File Explorer in windows #7 and #8
  • Everything looks great, so I switch to window #9, which has another chunk of ASP that generates custom URLs for the RSS feed (we've added selectivity, aren't we crafty?)
  • For the final test, I have RSS Bandit open in window #10. I create multiple new feed URLs (#9) and add to the Bandit config, to see what I get
  • If I made a syntax error in the RSS (missed something between #4 and here), I have to flip back to window #1 to clean it up
  • Oops, almost forgot ... like any good coder, I've got TFMs open, but it's not just one manual- window #11 is my multi-tabbed Firefox, Googling all sorts of sites to get references for RSS, ASP, and SQL

Sounds crazy, I know. I could/should go out and get Visual Studio or something. But like I said, we're not fully in production in this Microsoft development environment. We're innovating, right?

I've done open source development on my own in the past, and it's much the same thing - multiple different platforms, tools, and languages. For example, when working on my own site, I'm fixing configuration files and writing code in HTML, CSS, PHP, and mySQL. To get things working, I'm dealing with the configuration files for Apache, Eclipse, PHP, and mySQL. Edits in Eclipse and Crimson, pushing around source with FTP, fighting firewalls and routers, developing in Windows while production is in Unix.

This madhouse of multiple tools, languages, and platforms probably sounds quite normal - if you've been working heavy with open source and/or Web 2.0 for a few years. But imagine presenting this to legacy IT folks, working in their version controlled, standardized environments. The typical "road to the future" brings five new technologies, three new IDEs, and one or two basic system architectures that are all very different from tried and true.

Does this mean you can't teach an old dog new tricks? Not at all - most are quite anxious to learn, and have done so continuously over the years. However, this is all starting to feel like the first time we switched from procedural languages (COBOL, RPG, Pascal, Fortran) to OO and event-driven stuff (Visual Basic, PowerBuilder, SQLWindows). We went from offense to defense, from being controlling and orchestrating to reacting and trapping. Not that it was bad or wrong - just different.

Does this mean the experienced coder is washed up, and has nothing to contribute? Ask the folks in Big Pharma, having dealt with the FDA and validated systems. Ask the folks working with Finance in public companies, having dealt with SarbOx. Healthcare and HIPAA. Retail and RFID. Not to mention having to debug a lot of other people's code, and knowing when to step through or just refactor.

Running to the future, juggling multiple multilingual windows, and demonstrated facility with the newest tools is all good, but it's just one of many attributes that determine who on your team is worth 50 others. Have a little patience ...

Previously ...

Technorati Tags: , , , , , , ,

Invisible Technorati Tags: , , , , ,

Labels: , , , , , , , , ,

Thursday, March 27, 2008

Thoughts During a Power Outage

Thoughts During a Power Outage

I am sitting in the cube outside my office, connected by wireless to our corporate network in an otherwise darkened office. The power is out - started around 3AM, and it is apparently affecting a large area, not just this building.

  • Kudos to the infrastructure team that strung up the wireless access points here - thanks for plugging them into the same circuit that is powering the emergency lights. not sure if that was by design or a happy accident, but coupled with notebooks running on their batteries, we have the ability to get some communication of status out to the world.
  • Some concerns about battery life, however - I use a Dell Latitude D620, and it is (in my opinion) really poor at power management. I expect to get about 60 total minutes of work out of the thing - kinda sad if you ask me.
  • No affect on my Blackberry - I am sending and receiving just fine. If you haven't checked out Blackberry Messenger, I'd look into it - definitely useful for sending out quick updates to key folks.
  • Not sure if it would do any good to call folks on my teams re: working from home - zero insight as to when the power will come back on. I just made an entry into my internal blog, so I suppose if they happen to catch that post (or this one!) before they come in, they can give me a shout on the cell phone to let me know if they are coming in. Use best judgement - if you had a meeting scheduled, for example, I would definitely come in, just in case.
  • I just spoke to someone who did make it in - another early bird like me. He heard on the radio coming in that this is affecting a big part of the area.
  • I tried to Google for a status update, but am not able to find anything. That might be something nice for Commonwealth Edison / Exelon to set up - definitely a shortcut that I would set up on my Blackberry.
  • This is definitely a case for Twitter - unfortunately, that's blocked by our network policy.

I'm having a bit of fun here, blogging at near-real time to capture thoughts. Part of continuous improvement and innovation is capturing learnings from any situation, so this is my great experiment on blogs as news delivery (as opposed to spouting opinions / capturing deep thoughts - my regular meme / schtick).

That's all I know at this time ...

Technorati Tags: , , , , , , , ,

Labels: , , , , ,

Friday, March 21, 2008

BigDog: Impressive Robotics

BigDog: Impressive Robotics

I don't often post YouTube videos, but this one elicited a "wow" ...

I've only dabbled in AI-type programming, but I can appreciate the amount of computation that's going on in real time here. The Big Dog recovers nicely from a hard shove at about 0:40, but that's nothing compared to scrabbling on the ice at about 1:25. I found myself thinking through the subroutines, if-then statements, and 3D math required to figure out where to move your feet to counterbalance the weight that your carrying.

A little research on Google and Wikipedia and covered some interesting facts about Boston Dynamics; they are a spinoff from MIT doing a number of different robotics projects.

This is the posted in many places. I saw it on Make and BoingBoing, but it's cross-posted everywhere.

Previously ...

Technorati Tags: , , ,

Labels: , , ,