| Tim's profiletimngBlogLists | Help |
|
April 05 Leadership and Self-DeceptionI recently finished the book Leadership and Self-Deception by the Arbinger Institute. It is a well-written, easy to read book with an interesting view on workplace politics and what the solutions to it are. If you believe that Sun Tzu was a Sissy, then this book is definitely interesting because it talks about how the relationships in the workplace are the most fundamental thing to getting results.
Forget achieving goals, delivering results, meeting expectations, etc, if you don't get along wth the people you work with. Definitely an interesting read. April 03 Reformatting a machine sucksRecently I had to reformat my laptop, and I realized how critical applications such as Norton Ghost are. In this case, I'm not talking about data loss, but I'm simply talking about configuring the laptop the way I like it. I've had to set up Windows the way I like it (why is TrueType not on by default, but show contents while draggin on by default?), install powertoys, clean up the start menu, etc, etc.
I've had to install firefox countless times, re-download all the extensions that I like, re-set up my key bindings, get my themes, get all my grease monkey scripts, etc.
I have to setup VIM, remove notepad.exe and replace it with notepad2.exe, change the power settings, fix the system tray (i dislike hiding icons that have not been used), turn off useless services (why is the print spooler on when no printer is attached? why is zero wireless configuration on when I have no wireless card?), etc.
All this makes me wish for some online magic cloud in the sky that says "hey, lookie here, Tim just installed windows, lets configure it and set it up the way he likes it and install all the useful applications (firefox) and customizations that he likes" without me having to set up some ghosting thing (which doesn't work well across different machines). And this online cloud in the sky will talk to Mozilla to make sure that I have the latest extensions and the latest browser, it will talk to Vim to make sure that all my scripts are up to date, etc - that would just rock. And save me 2 - 3 hours every time I decide to flatten a machine.
Is there such a cloud in the sky? March 28 What you learn in school may not be totally relevant...This subject may provoke thoughts of congruence - I vividly remember sitting through classes of abstract algebra wondering when I would ever need to prove that a system forms an algebra over a set. Or, take for example a compiler course or text book. Generally, introductory (and maybe even advanced) compiler texts/courses architect the compiler in a series of "stages":
You first scan the text using a lexer, which produces tokens for the parser, which produces a parse tree for the analyzer, which decorates and validates the parse tree for the optimizer, which does some funny transformations to the parse tree (and maybe generates some IL) for the code generator, which writes out some low-level assembly representation of your program.
But of course, in the real world, things aren't as nice - like the VB compiler. To support real world scenarios like Intellisense, the various features in the Visual Studio IDE, "pretty listing" (where the compiler auto-completes statements for you), etc requires a different approach to architecting a compiler - one which no text book/course I know of discusses, but I stumbled upon this article in MSDN magazine written by my new boss, Matt, which discusses the architecture of the VB compiler.
Enjoy :) Maybe as I get more familiar with the code and architecture, I will have some more interesting things to say about the VB compiler. March 27 The Visual Basic teamAbout two weeks ago, I joined the Visual Basic team.
Back in the summers of '01 and '02, I interned at Microsoft on the Visual Studio for Devices team. It was an amazing experience for me, and one day I will write about my internship and what I learned from it. For now, here's a good article by Steven Sinofsky about it (although he speaks from an Office perspective, the experience is very similar).
After my internships, I joined the team full time - I really think that joining the same team you interned at is a great advantage - you already know the people, you know the product, you know the code, you know the experience - you save a bunch of ramp up time and can hit the ground running.
On the device team, I worked on the native debugger. In particular, I worked on the expression evaluator (this allows you to query your program for your data using the watch window, local window, etc), and when some members of the team left, I picked up some of the work in the debugger connectivity layer (which uses CoreCon) and some PDB reading stuff.
Last summer, the VSD team got transitioned to India, and our team got merged with the VS Core team. I got my hand at trying some new things, but in the end, I decided to re-join a team that was doing compiler/debugger work, since that is what I'm passionate about.
And so here I am, on the VB compiler team :) October 21 Been checking out Flock...Flock is a new browser based on FireFox that has a bunch of awesome integrations with your favorite sites (del.icio.us, flickr, and many others). To me, it makes the FireFox interface shine (for some reason, I stick with the default, rather plain-ish interface for FireFox - digging around for nice skins just doesn't appeal to me).
So far, it works pretty well (it is a developer preview though) - I like what they've done with the browser/web experience. Looks like something to keep an eye on! October 12 Waterfield bags rock!I just got my Waterfield laptop sleeve case today - I am impressed by the quality of the bag and the feel of the bag - the bag just feels slick! It is such an awesome bag, I recommend this to anyone who wants a cool looking laptop sleeve case that can double as a bag. I also got the iPod pouch and the Nano case - both superbly done and very good looking.
And to top it off, Gary from Waterfield was extremely helpful and courteous, and the service was second to none. My next bag purchase will definitely be from Waterfield again. October 05 Scoble talks about Web vs. Windows appsRobert Scoble makes a great point about web apps and windows apps - I tend to be in agreement with him. I use Outlook to manage my RSS feeds simply because Outlook feels much more responsive. Plus since my Outlook aggregator can sync with Bloglines, I have the best of both worlds.
I think the real issue has to do with data - the online services that Robert mentions all share a common set of data - Amazon's book database, Google's map database, etc. There is value in centralized data here. However, in situations where data is not centralized (ie, living on my PC), I prefer a Windows app - for example, my contact and emails on my computer, my passwords and personal information, my huge collection of pictures and mp3s.
Will I be uploading my contact, emails, passwords, pictures, mp3s, etc, up to some online service soon? Not unless Google or whomever is willing to offer 100 GB + of storage for a nominal price, with some pretty sophisticated privacy policy. And not until I have big enough bandwidth to consume my data living on the Internet - I do not want to wait 30 seconds to download an MP3 that I own.
Here's a thought - I have about 2 PCs and a couple laptops that I use on a regular basis, which store all my data in some encrypted format and backed up regularily. My laptop doesn't have all the data I have on my PC (the drive is just too small) - Wouldn't it be awesome if there was some way I could seamlessly synchronize/access my data from anywhere I have WIFI access, with some sort of smart card authentication? Maybe something like Google/MSN desktop search, but my desktop is sitting at home protected behind some firewall, and I'd like to search it from my laptop sitting 3000 miles away? And wouldn't it be awesome if this was done seamlessly (well, as seamless as a slow WIFI connection will get) - if the file you searched for was cached on your laptop, you'd have instant access to it, and this software would take care of synchronizing your file for you. Otherwise, it would download it on demand from your desktop at home (transparently).
Performance and security are paramount for something like this.
I've tried various solutions and technologies, none of which really work extremely well for me. Right now, I go through a whole bunch of hoops to get the data sychronized between my laptop and my various PCs - it isn't pretty, but it works (for now).
Anyways :) until that day arrives, there will always be a spot for Windows applications (or, "rich"/"fat" client applications) for me. PocketMod has changed the way I track my timeBefore I used the PocketMod, I would track my daily "todos" and notes in my Moleskine or Outlook - both of which were dissatisfying, because I didn't like crossing out and having just random stuff all over my Moleskine, and I didn't like tracking tasks with Outlook.
When I stumbled across PocketMod it was a lifesaver - PocketMod is a simple application that prints out a "book template" on a sheet of paper that you then fold into a tiny book with eight pages - the book fits very well in my Moleskine Pocket Accordion. Furthermore, there are lots of little templates that you can use to customize your book - I usually use the weekly agenda (two of them) along with some notes and a Soduku game. In this way, I use a book per week, and use the book to track my todo's and schedules for a week - I've found that it works marvelously for me. It allows me to separate my "tasks and todos" from my thoughts which I keep in my Moleskine.
Note that for work related things, I usually use Outlook, simply because I'm always connected to Outlook at work, whether it's in the office or in a meeting. I use the PocketMod to manage my non-work time, where I don't want to be staring in front of Outlook or bringing my laptop/PPC with me where ever I go. October 02 More Moleskine "hacks"There's a couple of great Moleskine "hacks" that are floating on the web - 43 Folders has one which is really useful (make sure to read the comments, because tons of ideas were floating around in the comments) and Mike Shea also has one.
Here's one that I do - I use my "large" moleskine more regularly, and sometimes my thoughts don't take up a page, so I use a red pen to put a dot on the left of an "entry", which helps distinguish multiple thoughts on a page.
When I'm done the entry, I use the red pen to record the previous page that had a similar thought on the line after the entry (sometimes people call these "projects" - they are more like categorizations of thoughts), and on the previous page's entry, I write the current page on the right, after the entry. This way, I have a "list" of thoughts and I can follow through the notebook easily - I've found that this works well for me. I number the pages on the bottom right corner.
I also do the meta data hack, but again because I'm using a large book, and sometimes my thoughts don't take up a page (especially if I jot something down quickly), I usually put the meta data along the page edge - this way, when I'm flipping through, I can easily see the meta data as well.
I'm sure there are many more hacks and ideas, but these are the ones that work for me - searching Google for Moleskine hacks returns tons of results. October 01 Organization and Re-OrganizationI realized that I'm on a constant quest to find new ways to organize - whether its organizing my files on my computer, or my thoughts on *something*, I'm always searching for new and interesting ways to put some order to the information that exists.
One of the things I have in abundance of in my life are "cards" - whether these are bank cards, credit cards, health cards, or "buy X get 1 free" cards, I just have way too many cards to deal with. I like to keep a really thin wallet (so it doesn't make your butt look lopsidedly large) - which presents a conflict (thin wallet, lots of cards). To solve this issue, I recently got a Moleskine Pocket Accordion and it is a life saver - all my cards can go into here, organized into 6 slots, and I can take the pocket accordion with me where ever I go.
Speaking of Moleskine, I've also recently switched to the Moleskine Large Ruled Journal as my main thought-recorder. Like Omar, I too have found that switching to paper and pen has radically changed my life - no longer do I try to figure out whether I should use OneNote, Word, Outlook, Notepad, etc, to organize my thoughts, I just pick up my paper and pen and off I go. September 26 Shield for my NanoI finally got the shield protector for my Nano - I must say that it is really awesome, except that it is a pain to "install" - the instructions were a bit on the skimpy side. Essentially, it's a piece of thin plastic that is sticky on one end - you wet down the sticky end, slap that on your nano, and then you are good to go. The shield is very finnicky about dust, so be sure you are operating in a dust-free environment. It smudges pretty easily, but I guess its better to smudge the protector then the actual device. It's also not very forgiving - think saran wrap. I think though, the next one I put on, I will do it flawlessly - the first time was an experiment (which turned out ok, but I have some dust caught in it, or something). |
|
|