• Home
  • About Me
  • Musings
  • Programming
  • Computers
  • Open Source
  • Society
  • Books
  • Design
  • Movies
  • Posts Tagged ‘computers fascination’

    One more step forward

    Another year has passed, I have added one more step to my life as a software engineer. Four years into the industry, it is long time now. In this year, I have groomed myself up.

    I am no more the rough, lesser jumping to conclusions, lesser assuming stuff, improving listening and notes taking. Nowadays, I spend more time attending meetings, take the points, propose design. I have grown, but I don’t have a way to measure.

    One more step forward is done. Stepping into the fifth year. All the best to all my friends who did join on the same day as me.

    Being a Code Monkey!

    Code Monkey: n, a person who writes computer code for a living.

    The term code monkey generally refers to a computer programmer or other person who writes computer code for a living. More specifically, it refers to a person only capable of grinding out code, but unable to perform the more intellectually complex tasks of software architecture, analysis, and design. The term is thus considered mildly insulting, and is often applied to the most junior people on a programming team.

    That is how wikipedia defines the term. I keep asking my self this question, Am I being a code monkey? I know I am better in converting a business requirement into code, than bother about what it implies to the business. I generally suck at testing. Testing is not my job, I can’t possibly find fault in my code. I write a piece, test it, if it succeeds in the first attempt, rather than delving to fix negative scenarios, I move on to the next requirement. Ipso facto, I am a code monkey.

    I, like most of my friends who work in software companies, just write half baked code for a living. We don’t create; we just fix code, if I have to properly call it. Most of us (software or IT professionals) in India, never realize that we are bad programmers. We have full blown IDE in our office, and we just churn out thousands of lines every day, without ever looking for alternative ways. If something bothers us, there is the ultimate destination, Google; just search, find and then Ctrl + C and Ctrl + V code, never understanding it. I am not blaming those who put effort to understand it before using it. I am just speaking about the mass of the programmers.

    Why don’t we realize? That’s because, we get the job done in time. At the end of the day, what matters is the output. We all try to make the management happy. What they need is delivery on time, and we are very good at it and also in times of crisis. Stay late, complete the work and you end up getting an ‘Exceeded All Expectations’ in your annual appraisal. With that comes a salary hike. What more do we need?

    So why am I complaining? I have a job, I get a decent pay, everyone is happy out there, being a code monkey is not a big thing to worry about, many (I didn’t want to use a most here, and hurt the reader’s ego) of my friends are also code monkeys. Why is there a need for this post then?

    I would have lived in the glory of my ego, if not for reading through the posts of Jeff Atwood and Steve. They are two people whom I admire for their writing on programming and programmers. Jeff admires Eric Lippert and Steve admires Knuth. So to me what are Eric and Knuth, programming Gods!!!

    Steve says in one of his posts

    Almost everyone thinks of their programming ability as being just fine, plenty good enough. They can get by, get the job done, do pretty much anything they’d need to do, given time and patience.

    It’s quite a nasty shock for many of our interview candidates when they find they’re unable to do something as simple as reverse a linked list, or open and write to a text file. They’re not shocked that they can’t do it; they’re shocked that we’d ask. Those are specialty skills, and not their specialty. They haven’t been doing much “low level” stuff like that lately.

    Not all interview candidates are shocked when they can’t do it, because many of them don’t realize they’ve written something that could never work: broken code that’s not even remotely close to a correct solution. These programmers are particularly cheerful, being so clueless that they don’t even know they’re clueless.

    Jeff says in his post,

    There are two “classes” of programmers in the world of software development: I’m going to call them the 20% and the 80%.

    The 20% folks are what many would call “alpha” programmers — the leaders, trailblazers, trendsetters, the kind of folks that places like Google and Fog Creek software are obsessed with hiring. These folks were the first ones to install Linux at home in the 90′s; the people who write lisp compilers and learn Haskell on weekends “just for fun”; they actively participate in open source projects; they’re always aware of the latest, coolest new trends in programming and tools.

    The 80% folks make up the bulk of the software development industry. They’re not stupid; they’re merely vocational. They went to school, learned just enough Java/C#/C++, then got a job writing internal apps for banks, governments, travel firms, law firms, etc. The world usually never sees their software. They use whatever tools Microsoft hands down to them — usally VS.NET if they’re doing C++, or maybe a GUI IDE like Eclipse or IntelliJ for Java development. They’ve never used Linux, and aren’t very interested in it anyway. Many have never even used version control. If they have, it’s only whatever tool shipped in the Microsoft box (like SourceSafe), or some ancient thing handed down to them. They know exactly enough to get their job done, then go home on the weekend and forget about computers. 

    It hit the nail. Once in an interview I was asked to write a program for a linked list, I was dumb struck. The interviewer was a ex-employee of Microsoft. He just posed this question as the first one in the interview. I just drew the Linked List representation and told him this is the algorithm. He wanted me to write the program on paper. I just couldn’t get it done. (It is a different story that I came back home furious about myself and settled down to complete writing the program in one sitting. I could not get it when it mattered.) That is when I knew, I am a terribly bad programmer. 

    I have been living in a Matrix(Movie), like Neo, oblivious of the fact that real programming is not what I do. Real programming is a lot more than what I do. Reading through the writings of Steve and Jeff, I realized I am being presented the red pill. I could either take the red pill and delve deep into the Truth, or just ignore it, and continue my living.

    I am taking the red pill!!!

    There are a few of posts that I would recommend to the curious reader.

    Being the averagest

    Practice Programming

    Skill Disparities in Programmers

    Separating Programming Sheep from Non-Programming Goats

    Mort, Elvis and You

    Two types of programmers

    Widescreen Monitor on ASUS A8V-VM running VIA/S3G Deltachrome display.

    I got a new SAMSUNG SyncMaster 2033sw, monitor, as my 10 yr old Philips has been running into issues for quite some time now. My PC in Neyveli (hometown) runs on AMD Athlon 64 on a ASUS A8V-VM series motherboard.
    The display adapter is an on board solution provided by VIA/S3G.

    When I connected the new monitor, the screen resolution was 1024 x 768 and the maximum supported by VIA/S3G Deltachrome IGP is 1280 x 768. This new one has a optimal resolution of 1440 x 900 (32 bpp). Searching on internet on various forums made me feel bad on choosing a wide screen monitor. Everyone said that a BIOS flash was required, which I least preferred.

    But a simple driver update left to Windows Hardware Update utility did the trick. All is needed is just a Update Driver using the Add/Remove Hardware Wizard.

    So Just update the driver if you are running into issues on the resolution. If that too doesn’t help, then resort to flashing the BIOS.

    Edit: Download driver for Windows XP.

    My PC

    Here’s a list of what is there in my PC, after what Yuvi had posted on his.

    • WAMP (For Apache, MySQL and PHP).
    • WordPress Local Install where I play with PHP.
    • TextPad.
    • VS 2008 Express Edition.
    • Ruby (I rarely use it).
    • SQLYog as a front end MySQL client
    • FireFox & Chrome.
    • VLC  Media Player.
    • Lots of movies for my room-mates viewing pleasure.

    That’s it.

    Dealing with Computer Overheating : Thermal Issues

    Here I am about to share, some gyaan I got from when my computer failed due to thermal issues.

    Computer Overheating symptoms are when your system shutdown abruptly, after running for quite some time. Modern BIOS are so designed to prompt the user with messages on the next boot, to indicate problems relating to over heating. In my case, BIOS POST message clearly as

    ‘Previously the system was shutdown due to a thermal breakdown. Please service your unit’

    The first step to fix this was to go for cleaning the dust that had accumulated over the heat sink and so the other parts of the computer too. Then, service the CPU by cleaning it and then before placing the heat sink  back, apply a litte thermal grease, so that the contact is made properly between the heat sink and the CPU.

    In chennai, we don’t get thermal paste in computer service shops. You need to look into petty shops in Ritchie Street, Mount Road. I bought one from New Version Computers, Meeran Sahib Street. You could get one for Rs. 5/- to Rs. 10/-

    Once done, its time to boot. Viola! the system is up and running and I am happily posting about taking care of the my PC.

    Let there be Code!

    Hello World!!!

    This is the first program that I wrote in my C class in my 11th class. There began my obsession with code. But I was not new to computers then!

    My friend Maarshal introduced me to computers. We joined APTECH Vidya course in the 10th standard summer vacations. I was totally new to computers. The class was on using MS Word, PowerPoint and Excel. My friend seemed to know more on these. I did not quite like Word and Excel, the tools that I use in office everyday now.

    I was attracted to PowerPoint. The cute animations and clip gallery added to the fascination. Even Office Assistant (F1) used to amaze me a lot. On the other han, Word has nothing to offer me except Mail Merge and Excel was just a collection of tables. (These are my means to earn now.)

    In my 11th class, we had a subject on C and in 12th we had Java. That is where it all began… From then on till now am into computers and coding.

    Let there be code!