Friday, 15 April 2011

My Background - How my journey with computers began...




My interest in computers started when I was about 11 years old, when my brother was introduced to the subject in his first year of university, a course called Business Information Systems 101.  If you read my Outliers you'll know that we weren't well off financially and so couldn't really afford PCs at the time.  So I first began reading about all things computer-related by going to the library, checking out the series of Computer Encyclopedias. This was a series of titles introducing the novice to computers, not sure if this is still around anymore, the books were hardbound, grey in colour, a little bigger than an A4 (tried searching for it now, couldn't find it. This is going back 20 years ago). So all I had to go on was books, this was in 1988-1990.

I remember my primary school library acquired a PC around the same time, but no one dared touch it! None of the teachers knew how to use it, and wouldn't even allow anyone to get close to it. I did manage to touch the keyboard one day and came close to hitting the power switch, if I remember correctly I did in fact switch it on, but was admonished for trying :-( Talk about encouraging exploration and discovery.  I suspect that PC was your basic AT machine, with just two floppy drives, no hard drives.  Such was the mentality in those days, and in the culture of the people - heck, I wasn't allowed to touch my dad's TV until I was twelve or thirteen years old. These machines cost money, so we had to look after them...compare that now to my kids who control the TV and even learnt on their own how to pause & playback live TV, but also access things from the Sky Planner without even knowing how to read yet!

I started high school in 1990. Our school was one of the few Indian schools (House of Delegates) to setup a dedicated computer room, with about 25 workstations (they were supposed to be networked, using BNC coax at the time, but there wasn't anyone with the know-how to do it). Our school provided a Computer Studies course from Standard 8 (Grade 10, 15 years) to Matric (Standard 10, Grade 12, 17 years) and that - really excited me.  Although I was just 13 at the time (Standard 6, Grade 8) and wasn't even supposed to be close to the vicinity of the computer room, I managed to gain the trust of the Computer Studies teacher, who allowed me to enter the room during the lunch breaks, after school and even weekend sessions that he ran.  Mr. Ranjeeth was his name (he's now lecturing at university), a wonderful chap, who's support and trust in his students will not be forgotten by all. I would hang around outside the foyer waiting for him to disappear into the staff canteen and seized every opportunity. My persistence paid off, so much so that I actually began to miss other lessons by staying late in the lab. I also made good friends who were in their senior year, at first they used to kick me out of the lab but then when Mr. Ranjeeth gave the all OK, it was fine afterwards. The teachers just knew where to look for me, better have a student interested in something educational rather than have him join the wrong company, believe you me...it was very easy to join the wrong crowd, for instance join a gang and start smoking...By the way, our lab was heavily secured, in keeping with the culture that these things are expensive, cost the people money and should be treasured...The other schools (i.e. the White schools of course had computers way before we did....)

It was these early high school years that I was introduced to MSDOS, GWBASIC and PACMAN of course.  I read every manual I could get my hands on, and experimented as much as I could.  It was in high school that I met other students from more affluent backgrounds compared to me, and was amazed that some kids had PCs since they were like 10 years old so I had a lot of catching up to do.  I soon mastered the DOS command line and was fluent in playing games.  I started programming at 15 when I took the Computer Studies course, and from there my interest deepened...I seriously needed a PC to practice on, luckily had a first cousin who always offered his help with open arms. After school and some weekends I would spend at my uncle's house doing the homework, and in between play games (Vikings, Duke Nukem, Dangerous Dave & DuneII spring to mind).

XT, from Ohio Computers, two floppy drives only, no hard disk, 12 inch Hercules monitor, orange text.  It was a thing of beauty, my very own machine to play games and program...

In high school we covered basic computer architecture, algorithms and programming in Microsoft GW-Basic and Turbo Pascal. In the last two years we'd do a project each.  My first major project in GW-Basic was called "Trig Tutor" by "JincoSoft" (cheesy I know). Trig Tutor was an interactive tutorial that taught trigonometry concepts, showing diagrams, graphs and even had an exam.  For all intents and purposes, it was mostly a screen dump program with little logic of handling the exam and key presses.  The thing that took me most time was coding the animation. Hopefully you can imagine this - Two people running from either side of the screen (one runs in from the left, the other runs in from the right, they meet at the centre), coming together and opening up a scroll and running outwards. The scroll opens up and you see "JincoSoft presents TrigTutor" in the centre.  That's what I had in mind (just as the guy walks in Dangerous Dave, but running instead), but in the end, realising a running motion of legs and arms moving for both figures was too complicated, so I settled for what you could call stick figures coming in from either side of the screen, not simultaneously, one at a time, and then the intro text coming in from the right.  So that was the basic animation sequence that nowadays can be implemented so easily - there are plenty of animation programs out there, and application engines hidden behind the scenes in browsers or the system turns animations on as if by magic. Just take a look at this snippet below, it's really amazing that even in a browser post, you can execute complex-behind-the-scenes code so easily.

So I was a bit ahead of myself then, knew what needed to be done in terms of frames and the physics of running, but just couldn't figure out how to do it in GWBasic. I wish I had a video to prove this, but I've lost all the  floppy disks a long time ago...

Quattro Pro for DOS screenshot
The next school project was in Turbo Pascal.  I was heavily influenced by Quattro Pro, remember that? So I ended up writing a Quattro Pro clone, but instead of a spreadsheet, it handled a school report system. The classic problem of sorting out pupil's grades, sorting out the class positions and also generating a report for printing. I had emulated the Quattro menu style navigation, pressing "\" will bring up the menu, navigate left, right, up and down will highlight options, hitting enter will take you to an action and reset the screen. What I hadn't quite worked out was double buffering for screen scrolling - so I had to limit the display area to one screen width, with limited paging, but no scrolling.

Part way through school I met a chap who actually programmed back in the 60s/70s with punch cards. Yes, a South African, but no, not an Indian chap, a white guy. He was really helpful and fed me some classic books: Peter Norton's guide to Assembly Language, IBM PC, etc.

I also pair-programmed with a friend of mine who was equally passionate computers, he lived just up the road. One of our early experiments were to re-create the Norton Antivirus scan that used to be part of the boot sequence. It was a series of characters "| / - \ | / - " repeatedly that gave the appearance of spinning. That was cool,
remember the DOS spinning cursor (Thanks to Sal for helping with the javascript here):


I used to plan pet programming projects during school holidays, to the point of drawing the UI on paper, the classic wire-frames. I'd even toyed with names for my company I'd own one day.  The programs I focussed on again was more around emulating Quattro Pro, which was a tall order, so nothing really materialised apart from the spinning cursor, the menu driven system and a basic spreadsheet-like application to do school reports.

You'd think that I'd continue my foray into computers after high school, but that didn't really happen. University, in my opinion is a waste of time [topic for another day].  Anyway after high school I had to decide what do do with my life: Medicine or Computers?? Turned out Medicine was not an option as it was too expensive and I declined my only offer, so that left Computers. Two choices: Computer Science or Electronic Engineering.  I chose the latter because I thought I'd get the best of both worlds with Elec Eng because of the cross-over in the domains, and because of the promise of software engineering courses (Operating systems, databases, software engineering & software design) in the 3rd and 4th year of the engineering course.

During the university break of the first and second year, I used to work through the holidays for a national clothing retailer. I started off as an accounting clerk, but persuaded the IT admin guy to take me on. They were just installing Point-of-Sale (POS) systems nationwide, all networked, with the master control centre in the local town.  I ended up planning and rolling out a few stores all on my own: installing the machines at the counters, patching the network cable and testing the systems.


I wasted the first year learning about chemical engineering, technical drawing & mechanics and advanced calculus. The second year was a little better, offering a course on C in first semester (2 months really) and Assembly in second semester. By that time, my passion for programming had waned because of all the other course load, being away from home and student life itself. In the 3rd year, there was one course on embedded programming PIC assembly language, 
and guess what - the courses that were promised were not available because we didn't have the lecturers available. What a waste - I'm learning about radio communications, control system theory when all I wanted was to learn about software.  So even though I succeeded at getting a university degree, which in itself was a triumph considering that out of 600 students who registered in 1st year, only about 50 students reach the final year in 4 years and graduate.  But I had some major lost time, and by then I was no longer passionate about programming as I was in high school.  In my third year holidays, I did a two week stint on Y2K testing, but no programming.


Because I got a bursary from Vodacom, I was heading off into the communications field, GSM seemed pretty interesting at the time - but we didn't even touch on that subject in university.

In my university projects, I tried to keep them software related. In my final year 1st semester project, I was part of the "MotorVations" team, our product was called "TheEye", a vehicle-based monitoring and measurement device. The project was a complete Product Development exercise, we had to do marketing, advertising, research, presentations, prototypes and final product implementation.  Back in 1999, accelerometers were just coming out (compared to now where these things are in every smart phone, sat nav, etc). TheEye was all about measuring and reporting driving performance, by using data captured by the accelerometer and presenting it in a visual form that makes sense. It was a major team effort, the code that I wrote talked to the accelerometer via a PIC micro controller and sent data onwards to be processed. One team mate wrote the digital clock, another wrote the VB application interface. Like most university projects, we had little time for integration testing and feedback, in the end only the clock worked and data from the accelerometer appeared to be randomly generated! But if I recall correctly, our team did get the highest mark in the class overall.  A sore point to note though, and it was our introduction into team work, was the immense pressure and negative atmosphere that resulted when it came to distributing the marks to team members...the team split after that project :-(

To end this post (my real-life industry projects will be another post), the final year project was a Mail system, written in Visual Basic, using Novell Groupware ActiveX objects. It was a simple system to filter out email distributed to specific user groups on the network, for university notices. For example, students shouldn't get to see notices sent out to university admin, chemical engineering students shouldn't get notices for mechanical engineering topics, etc.  I was left entirely on my own to figure this out, not having a good relationship with my mentor (a post for another day, another reason for why I feel university is big waste of time - the professor could've done a better job in my humble opinion). I did a reasonably okay job of the project in the end (but again found myself missing out on big piece of information, for e.g. the whole topic of network systems and unix servers. Had I done the course on operating systems or taken Computer Science instead, I would've re-used part of an existing technology...but thankfully Novell had exposed some pretty cool ActiveX objects that provided all the data and network communication I needed. What really irked me was that after I'd submitted my initial design that used these objects, the professor routinely updated the project spec by specifying using novell groupware interface!) Agh, I needed to pass and just get the hell out of university and start work to earn some money...I was expecting to work for Vodacom anyway, radio engineering not doing software at all...

Having graduated, I found myself without a job - the Vodacom bursary didn't guarantee a job placement which I assumed was set all along. I had interviewed at Deloitte for an analytical role involving mathematics, statistical mining and investigating fraudulent pension schemes.  I was desperate to take any job, but somehow maintained I shouldn't throw away my hard-earned Electronic Engineering degree for a job involving numbers analysis.  A month passed, Vodacom approached me and offered a Database admin/systems programming role - I spent a couple of hours with the team and realised again that I'm not interested in data harvesting and SQL analysis, I wanted to create systems.  So I really pissed those guys off for wasting their time.  Then finally in March 2001 (after about 6 months looking for a job), an opportunity at UEC came up: These guys actually made Set-Top-Boxes from scratch, wrote the drivers, interfaced with operating systems and even wrote application code. They worked with companies around the world, and the interview process was not even an interview - they were just looking for fresh graduates to start churning out code.  So this was the closest thing and most relevant company for an Electronic Engineering graduate, and I took the job.  But I wasn't put on to write drivers or low level bootloader code, instead found myself learning and writing OpenTV applications, in C - a language that I programmed in briefly during my second year an university!

The flame was on its way out...until I started working for a real company (UEC), but even then in my first year of employment I was still a newbie...the flame only began to come back after I'd left South Africa to come into contact with the first world experiencing first hand what was on offer at both the workplace and universities which made me realise what a gaping hole there was, a big divide in knowledge and work ethic, professional responsibility between the two worlds....truly an eye opener! This then provided the spark igniting my analytical engine that had lain dormant for so long, spurned an interest in reading and experimenting as I had this big gap to close...which thankfully I did eventually close both academically (got an MSc from a distinguished University) and professionally (worked with brilliant people and secured a position with advanced product development team)...   Alas, I have painted a bleak picture of the educational experience the South Africa provides, perhaps it was down to just bad timing during a period of change and transition in the political climate, the university has since then improved its graduate programme by introducing a Computer Engineering degree to be more in tune with the real world...globalisation, Internet and open source have no doubt been an overall influence.

Now that I'm heading back to SA, one of my goals is to promote a different kind of pragmatic education, and I will endeavour to promote open source software, that alone provides enough information to be learn and become a self-made software engineer (again, digressing - a topic for another post)...
During my stint overseas, I had solid exposure to real world development, writing all types of applications, centred around Digital TV systems. Starting with the Set-Top-Box User Interface Application Development primarily in C, exposed me to the world of embedded programming, real-time operating systems and operating system development. That was really cool stuff because the code was actually being used by real people in the homes - a very nice feeling to know that there's code out there that you wrote...I was also exposed to Server-side programming specifically on Windows Server Operating systems where I moved to C++ system programming, opening up a whole new area of programming, involving video streaming over IP, encryption systems for VOD servers and lights-out automation services using web services.  I also did my Masters on Internet Search and Advertising, exposing myself to a somewhat different world of Internet Systems.  And the closest thing to doing something from scratch, was when I took on a pet project to prove I could make a TV talk, the very first implementation of speech synthesis on a Set-Top-Box - alas, NDS at the time did not see any business value in promoting the work into mainstream product development - so a couple of years later, a start-up called OceanBlue went public and became the worlds-first in providing Talking STBs!!

I have always been full of ideas, and still continue to dream of owning my own start-up one day, yet I find myself caught in reality, that unlike Steve Jobs, I don't have a reality distortion field - I can't afford to take that massive risk and plunge into the unknown, I am always looking out for the most practical and realistic solution, putting my family needs ahead of myself - so as yet, as much I'd hate to admit it, haven't had the guts to really go out on my own - but the desire is still there. I just hope the flame doesn't burn out soon....





Monday, 4 April 2011

My Professional Background (Digital TV Software)...



Founders at Work: Stories of Startups' Early Days (Recipes: a Problem-Solution Ap)If I am to write about professional topics in software engineering offering my opinion and the like, then it's fair I provide some bit of background into who I am professionally.  I'm afraid I don't have that much of a story to tell, but I'll try to tell a story just like one's told in one of my favourite books Founders at Work: Stories of Startups' Early Days (Recipes: a Problem-Solution Ap) although I'm not nearly as great as those guys, but aspiring to get there some day ;-)  Okay, this post isn't going to tell the story as planned, the story will be left for another post. Below is just a snippet of my current professional background.

I am in the business of software development in the field of Digital TV systems. What's that then?? Have you heard of a gadget called a Set-Top-Box (STB)? It's a cool little box that brings you digital TV to the home, offering you hundreds of channels and interactive applications, no doubt a couch-potato's favourite tool :-) You drive the STB through something called an Electronic Program Guide (EPG) - which is basically an application consisting of a few screens providing information to navigate the TV schedule, control the TV, etc - basic STB & EPGs are called Zappers that give you access to basic TV services and a limited schedule, possibly offering a feature called Reminders that allows the viewer to set reminders for programs in the future. Advanced STBs & EPGs range from Personal Video Recorders (PVRs) or your TiVo, allowing you to pause and rewind live TV, watch one program and simultaneously record other programs. Traditionally, these STBs were limited to the broadcast domain: satellite, cable and terrestrial. Like so many technologies, depending on the region, different standards are implemented - it also depends on the technology suppliers chosen by broadcasters.  More recently though, with the ubiquitous internet and the plethora of interconnected devices being driven by the rapid growth of smart phones, STB technology is forced to follow suit by offering Internet services, collectively grouped under the moniker IPTV. For an overview of IPTV systems I highly recommend IPTV and Internet Video, Second Edition: Expanding the Reach of Television Broadcasting (NAB Executive Technology Briefings).

Anyway, there is still very much an ongoing battle for the living room with products like GoogleTV, AppleTV, Netflix, AmazonVOD, BT Vision, Roku (to name a few) that are competing and trying to disrupt the marketplace, which, in my opinion is always a good thing, especially since traditional broadcasters have long since enjoyed a monopoly, trapping consumers into their product walled gardens with strict pay walls...Sorry, I'm digressing.  More on my thoughts about this particular industry in future blog posts ;-)

The fundamental technology that brings us this beautiful world of TV, is the family of standards called MPEG, Moving Pictures Expert Group.  Another fundamental technology to this is content protection, or Conditional Access. Remember that PayTV broadcasters are offering premium content to paying subscribers, this content needs to be protected to prevent piracy, etc. Conditional Access is the backbone to securing revenue for the PayTV operators.  If you're looking for a good overview of this technology domain, then I must refer you to no other than The Essential Guide to Digital Set-Top Boxes and Interactive TV

The STB in your home is just an end-point. A lot of things has to happen before-hand. I won't go into the details now, but just understand for now that the STB needs to receive a signal from somewhere, just as your mobile phone will not operate without a valid signal.  Just as you have some transmission medium that enables you to receive mobile signal (those base stations / transmitting stations), so too is there a similar transmission and distribution medium for TV signals.  And to get TV, you need content, i.e. something to watch/listen.  This content needs to be prepared first for transmission.  To get the nice TV program in your living room, content needs to be created, converted to some format and distributed to your home in some way (cable, satellite, telephone line, etc).  This all requires intensive computer systems, called backend or Headend systems.  Without a headend, your (traditional) STB is useless.


So what have I done that qualifies me to speak on this subject??
I have personally written STB EPGs (known as STB Interactive applications MediaHighway, OpenTV), ranging from your simple zapper boxes with simple graphics, to advanced screens with 7 day program guides and PVRs (generally powered by top 3 chipset vendors ST, Broadcom, ARM each with its own porting layer). STBs are no different to PCs and needs an operating system function, I've written low-level operating system components that enable EPGs to run.  I've also written Headend applications in the IP domain, particularly contributing to IPTV streaming and VOD encryption systems.  I have worked with STB manufacturers, Software Consulting and Middleware/CA/Headend technology providers, including PayTV Operators (Multichoice, DirecTV, BSkyB, Sky LA, Telecom Italia, Softbank, etc). As an engineer I've written code running in over 25 million homes in all the continents, as well as headend systems serving thousands of users.  I've also managed the production of STB system software (Middleware Stacks), involved in multimillion pound projects and therefore have direct, first hand knowledge of not only developing STB and Headends, but also innovated on accessible EPGs to make them more easier to use, for example a Talking TV.  Overall, I believe I have relevant, well-rounded experience and a versatile skill set that qualifies me to contribute to the Digital TV subject.  I'll refer you now to my LinkedIn profile until I follow-up with another post going into detail into some of the projects I've worked on, including the story of how I came to be involved in software...

Tuesday, 29 March 2011

The Project: Move back to SA



The clock is ticking, the countdown has long since begun. A mountain of paperwork, process and planning awaits me. Having started the process off a few weeks ago with the dreaded trip to South African High Commission in London, where I got my citizenship revoked, I now prepare myself for the second journey, this time to apply for my 18 month old's relative visa. This time round I'm going more than prepared, I just hope they don't mess me about. With less 7 weeks to go to finalise the move, the visa application takes about 3 weeks...fingers crossed.

So what does a relocation plan look like?? Some people say that relocating one's family between continents is one one of the most stressful projects, if not, the most stressful project in one's life. How do you prepare for such a move? There's so many variables to consider, logistics, and timetables. Each task brings about new dependencies you haven't thought about.  All of these delays take time, for example, just to name a few:

  • Insurance policies can't be cancelled more than 14 (motor vehicle) or 28 (household) days in advance. The computer system only allows for cancellation as long as it's within the allowable time window! Imagine that - you sign up for insurance and pay up front for the entire year, and then to simply cancel based on a forward looking date is next to impossible...grrrr! So you have to pencil in days in your calendar to remind yourself not to forget about calling up your insurers within the time window. So can't mark those tasks as completed until you know for sure your policies been cancelled.
  • Similar note - beware of the AA.  Reminds me of the clip from lethal weapon - read the fine print in the terms and conditions page 19.   Apparently, leaving the country doesn't count as an exceptional circumstance, and you're not allowed a rebate on your annual policy of £150 just renewed last month, and you can't terminate the agreement on the day you're leaving the country - bottom-flippin-line: No refund due.
  • Inland revenue - you can't really sort your income tax out without getting the P45 from your employer. So if you want to be an eager beaver and prepare in advance, no chance. First wait until your notice period expires, get the P45 and then inform inland revenue. All of this should ideally be done whilst you're in the country. 
  • Sorting out relocation companies and vehicle import - this deserves a separate post....
  • The biggest headache is sorting out the house for renting. If you're like me and take your time fixing up things, i.e. just being content with living with the problem, then before you know it, all of these add up and bang - one problem after another to fix.  And somewhat ironical that the tenants will move into a much better house than what we were living in :p But joking aside, it's really important to ensure the house is in order, safe and free from major defects - which should mean less worries for the landlord...
Anyway, just take a look at what an initial brain-dump of a project plan for relocation looks like:







Saturday, 19 March 2011

I've resigned from my job...



Yesterday I handed in my resignation letter, giving notice of 8 weeks, my last day at work targeting 13 May 2011.  It was surreal, and I had a deja-vu moment just as I was writing up the letter, it was as if I've seen myself doing this before in a dream...I've had a few occasions of this deja-vu where I could almost predict what's going to happen next, or the situation seems really familiar...

Even though I've not formally accepted a job offer so in theory I don't have a job waiting for me, I was duty bound to let my employer know of my intentions to leave.  Some might say this was a foolish move, but I was faced with an unusual dilemma: I had a got a new job at my company and was going to start with my new team this week, I was in the process of handing over my old job and join the new team.  We were going to plan my next set of work and was being assigned to a critical project where the CEO was the main stakeholder.  This was a critical project where the stress was going to be high and the pressure to deliver, enormous.  Knowing that I'd made the decision to leave for South Africa, I felt duty bound to come clean with my new manager - it could have went either way:  I could be put on this project and commit to working through my notice period, or take on other tasks the company felt they needed help with, or my employment be terminated immediately, or stay with my old team...

It turns out however, that my new boss was very understanding and appreciative. I wish I'd made the move to his team years ago. In fact, his team is considered the crem-de-la-crem of the company (working on advanced development), and I felt honoured to have got the job, competing with eight other extremely competent colleagues...and now I was leaving!!  So my new boss says he understands completely, family should always come first, and it was the right thing to do instead of waiting to take on new tasks and then spring the notice on him suddenly.  He was very quick to resolve everything with HR and my old manager, and we came to an amicable agreement.

I would work with my new boss for the rest of my stay with the company, working on an invention of mine called "Talking EPG", bringing it to closure before I leave...What a wonderful way to stay motivated for my remaining 8 weeks!  I was dreading going back to my old job and didn't want to take on the other stressful project.  

"Talking EPG" is a project I started about 5 years ago aimed at enhancing accessibility for digital TV. Essentially for people who don't like reading the text on the Electronic Program Guides, they have the option of the TV speaking out the text for you. This was before the days of iPhone/Android, nowadays most modern devices have some sort of speech capability. Soon it'll come to TVs and Set-top-boxes.  I wish I could say my invention became public before anyone else, but alas, my company was too slow to pick it up (I'll write about that in another post on Innovations soon to come) and other company has went public and are already selling these boxes in the UK.  Anyway, accessibility is a passion of mine, one that I hope to pursue in the years to come.  So my new boss says they need parts of my Talking EPG to integrate with another project they're running...without hesitation, I jumped at the chance!!

Working on my own creations would be a nice way to go, and also leave the stressful part to the whole moving back to SA.

So I have 8 weeks to:
- fix my house up, find a letting agent and get a renter committed
- sort out all the paperwork for SA home affairs
- get relocation companies to quote on the move
- agree everything with new employer (actually sign a contract when it's ready, hopefully there's going to be a contract)
- sort out vehicle import
- sort out paperwork for UK

I should be back in SA by June time...fingers crossed

Monday, 14 March 2011

Review: Good Boss, Bad Boss by Rob Sutton



Fight as if you're right; listen as if you're wrong.If you plant a seed in the ground, you don't dig it up each day to see how it's doing.Beware of your inner jerk. Peformance, humanity...Self-awareness.Bossholes

...are just a few snippets that stand out for me. This piece is not just an opinionated work by Sutton, it's a culmination of a life time's research, backed by professional studies, research and personal accounts from the workplace. Although it could be said the vast majority of the material is from US companies, the problems of being a good/bad boss/manager are relevant to all countries & cultures - humanity.

This book can be read by managers and subordinates alike - If you're a manager, then hopefully you'll leave your ego at the door, open yourself to new insights, allowing you to question yourself, an exercise of introspection; if you don't experience an "aha" moment, then you're either a very good boss, or just an asshole...for those people reporting to managers/bosses, you'll find the material useful in managing your boss, to detect signs of "bossholes" and possibly change you ways, e.g. don't take it personal, find methods to deal effectively with an asshole boss...




 


It's unbelievable how I found myself looking back to scenarios in my own professional life, and of late, have had to deal with some really difficult people, including my bosses.  I can personally relate to having a boss who is so full of himself that he barely listens to people, or appears to be listening, but doesn't heed a word being said. Once he zones in on a train of thought, for his understanding and for all intents and purposes "rightly or wrongly" (his famous quotes) assumes his way is the best without giving a chance to the others for trying out their ways....on top of that, the guy builds upon his 20 years of industry experience and always uses that as leverage against his subordinates. Instead of teaching the ropes, this guy is just plain bossy - a manager without any form of coaching skills, of rather selfishly keeps the skills and experience preventing others from learning.  Among other the things, this guy was notorious for delaying meetings, extending the meetings to have "educate me session" with no cause for concern if you've got other commitments to attend to. Not to mention, he takes over meetings, and wants to be involved in the detail...I've also had bosses where after having been completely honest about issues, does nothing to improve the situation...At first I thought it was just down to UK management style and culture (i.e. being aggressive, in control, focussing on production production production, less on people people people) - but then I later worked with some brilliant managers that were very good coaches, mentors and leaders.  So it's good not to generalise... Anyway, one should always take time to assess the situation, as the saying goes to "soss it out" - and if you don't like what you see, or the person you might become as a result of working for a crappy boss, then walk away.... 


 
If only they could read this book and learn a thing or two. But even then, as the example cited in the book, even if you give the book to your asshole boss as a gift, he won't get it, think that he's an excellent boss...afterall a leopard can't change its spots, you can't teach an old dog new tricks....unless you empty your tea cup ;-)  And yes, I'll be reading the The No Asshole Rule: Building a Civilised Workplace and Surviving One That Isn't in the near future...