Apr 12

Our DBA was very busy today, helped out our developers top write efficient code,explained to the programmer how to launch the old DTS package on SQL Server 2005 and etc. You know how it is, someone comes n and asking the question and he answers the question at the same time he is doing the work.
So , today answering one such questions our DBA deleted by mistake very ctitical database. Fortunately , we had zero data loss thanks to our backup/recovery strategy.

I think that is acceptable to say that you are busy right now please ask the question later on, what do you think?

Feb 24

With the coming of the New Year we see a lot of Top 10 lists.  You know like the Top 10 planning, design and development websites of 2009 or the Top 10 Quotes of 2009.  We are doubly blessed that since this is the “end of the decade” that we also get the top 10 lists for that as well.  You know like EPSN Boston’s Top 10 of the Decade (all Boston Teams) or Yahoo GamesTop 10 Video Games of the Decade (Super Mario Galaxy in the top 10?, really?).

Not to buck the trend, I decided to put together my own list of influential technologies for the years 2000-2009.  As you read this, please keep in mind the criteria that I used:

  • The technologies listed are not in any order
  • The technology did not have to be invented after 2000, but had to have reached wide spread adoption or a major turning point after 2000
  • I tried to avoid specific products or websites by name, but rather focused on the technology or the trend, rather than a specific implementation
  • I am strongly biased by my own personal experiences with the technologies, your experiences with them may be different than mine

MP3 Player Portable Music Players / Digital formats – It is not hard to see the impact of the portable music player on our society, just walk down the street and look at the number of people who have white ear buds in their ear. 

While the music player is obvious to see, what is not seen was the companion shift to digital distribution of content and the mind shift that we made with the change.  The digital music stores helped the music players to take off (although all indications are that most of the music does not come from online stores).

RSS Feed iconRSSReally Simple Syndication is probably the geekiest of all the technologies that I will list it.  This is one of the technologies that predates that 2000s, but saw wide adoption in the last decade; if had a blog or a website that published RSS before 2000, you should have a special badge to indicate your early adoption.  RSS is probably the third most popular document type on the Internet (behind HTML and CSS).  It is the best example of the power of a common data format.

People with laptops Social Networks early forms of social networking existed before the year 2000 (Yahoo Groups was one that I used to hang out in back in the day) and the concepts behind social networking even pre-dated the world wide web with people interacting on bulletin boards.  But again, it was in the last 10 years (actually 4 or 5) that social networking went from being a niche activity to seeing wide adoption.

The real impact of social networking is just now being felt as the “social” aspect expands from a casual activity that takes place out of work, to applying these principals to activities at work.  The overall trend of taking social technologies and applying them to the work place is called the consumerization of IT, and we will see it with a number of the technologies in this list.

Cellular PhoneSmart Phones – One of the things that the MP3 players mentioned earlier did was get us used to making out computing experience portable and taking it with us.  Going back to the 1990s we had Personal Data Assistants and cell phones.  It was natural to combine the two into one device and throw in the MP3 players as well. 

LAN CableBroadband – In August of this year Comscore released their latest estimates of broadband penetration in the United States.  The national average is now 89% of all Internet Users have some form of fast Internet access.  Personally I have had a cable modem for nearly 8 years, but I entered the year 2000 with dial up access. 

High speed access at the home was unusual in the 1990s; most people only had high speed access at their work place.  Now broadband access is becoming so ubiquitous that the people who develop websites and applications are starting to take it for granted.  By itself broadband access is a fantastic improvement, but like many infrastructure technologies, the real power of broadband is as an enabling technology that brings us other things (like streaming media).

TV on Computer Streaming Media – As I am writing this I have the television on in the background showing a movie.  The interesting thing is that it is streaming from Netflix in full High Definition quality to my Xbox using my internet connection.  There is no special magic about the Xbox; I could just as easily be streaming to my web browser or to any number of devices that support streaming.  Nothing special about Netflix either, I can stream from dozens of sites.  Contrast this with prior to 2000 when video on the web (when you could get it working) was of low quality.    

GPS Device in Car GPS – the Global Positioning System dates back into the 1970s from a military experimental standpoint and has been operational for civilian use since the 1990s, but this is one of the technologies that really took off in the 2000s.  The obvious adoption inside of the car was a first step, but now that many phones come equipped with GPS we are starting to see the real applications of location awareness.

Game ControllerGame Consoles – Game consoles are not new by any stretch of the imagination.  As early as 1978 I remember hanging out with my friend Charlie after school every day playing his Atari 2600 for 46 minutes (the time between us getting off the bus and having to turn off the console before his mother got home from work).  But the generation of the game consoles that launched with the original XBOX and the PS2 are really a different class of systems.  The modern game console is a hub of entertainment, with connections to social networks and streaming video.  Certainly games have comes a long way from Space Invaders.

reporter Social Media (Blogs, Wikis, Podcasts) – The last item is less about the technology and more about what it has enabled.  A vast reduction in production cost and a huge reduction in the distribution cost have led to the emergence of user generated content.  There are some that are saying that user generated content is replacing content from traditional media companies, but I look at the trend as additive; I still watch the evening news, but I have added social media to the mix as well.

I rather enjoyed putting this list together, but I am sure that I have missed a technology or two that is influential and would love to hear about the ones that I missed.  I will say that I intentionally left off search as a technology.  Search was clearly influential in the 2000s; however I think that it was established by the beginning of 2000.

Feb 24

image At the Chicago Code Camp this last month (May 30th) I got to see a great presentation by Micah Martin (@slagyr) entitled “Ruby Kata and Sparring”.  Micah’s presentation was in a very “Zen” style and the majority of his talk was about the importance of practicing your coding skills.  He talked about how we can learn from two common types of training that are used in the various martial arts:

Kata – detailed choreographed patterns of movements practiced either solo or in pairs…most commonly known for the presence in the martial arts

Sparring – relatively ‘free-form’ fighting, with enough rules, customs, or agreements to make injuries unlikely

After he introduced the concept of Kata, he showed us a demonstration using a well known exercise called Langston’s Ant.  Micah bowed to the audience (as is typical in Kata) and proceeded to  “live code” his implementation from scratch and ended with another bow to the audience (also typical).  The Langston’s Ant has no perfect solution, so he then asked the audience to rate his code and to give him feedback on how to improve his implementation.

One of the things that struck me was how Micah answered the question “It seems like you are very practiced in writing this solution, how many times have you done this?”.  Micah told us that he had done the solution more than 50 times.  He did point out that he had not done the same implementation 50 times (as if he were practicing giving a Langston’s Ant demonstration), but had evolved his implementation over the course of his Kata sessions.  His 50th solution was “better” than the first solution as he had refined it; just like your technique should get better as you practice your martial arts.

barbell

I personally need to get a coding workout.  I am an evangelist for Microsoft, but that actually involves a lot less coding time than most people would think (the amount of time varies from individual to individual, some of my colleagues code a lot more than others).  A field evangelist for Microsoft is typically a technology generalist, having to cover a real breadth of technologies.  As you may know, Microsoft has a lot of technologies, so we spend a fair amount of time immersed in learning new things and not necessarily practicing our coding skills.

Over the course of the summer, I intend to get a coding workout; knock the rust off or sharpen the saw as it were.  I am going to practice a coding exercise every week (unless I take a week off for vacation; which I would totally unplug for).  To keep myself honest, I am going to post something about each workout up on the blog, even if it is to admit a FAIL.  Look for the first post next week: Coding Workout: A twitter badge using jQuery.

Note: I have been on an un-planned blogging hiatus for the last 2+ months.  It is not that I have not had things I have wanted to say, but have just been short of time to say them.  For those of you who have stuck around (kept me in your RSS reader or checked the site for updates), I thank you for your patience. I did want to write a “Sorry for not blogging” post (I hate those – just start blogging!).