<< Back The truth about my life

Fri, 12 Jan 2007

One of the best things about my employer, Parkyeri, aside from many other things, is the library:


Image courtesy of Bekir Dogan and Erhan Kesken of Parkyeri fame

I remember my interview about two and a half years ago, when the company did not have that much to offer. My old friend Gurkan Aslan, a retired Parkyerian -- also a renowned singer and musician, forwarded my resume and I received a phone call. I was still bearing with Murat Koc at FrontSITE, boy was that fun. All Parkyeri had to offer was a good series of challenging tasks awaiting in the line, a flexible work schedule and a honest company culture. There is also a performance measurement system that has some impact on your monthly salary, but I'm going to leave that alone. In the interview I remember pointing out how much I usually spend on books, I doubt it worked out though.

About a year and a half later, thanks to Giray Pultar -- aka. The Boss™ -- who took extra care in selecting what sort of books and furniture to bring in, we had the library you see up there in the picture all set. I know few companies that actually encourage people to spend their working hours on reading. I wonder if Google does it. So yeah, I hear rumors, they say Parkyeri employees are not well paid or the company culture provides too much freedom, all can be relatively right or wrong. It depends on which companies you compare against.

Enough for selling my employer, let me switch to the subject. Okay, I was looking at the upper left shelf with the hope that I could find something interesting. Practical Common Lisp... TeX books... no-no. Microsoft Press... C++... MySQL, oh dear... and there it is, CIO Wisdom? Yeah, I picked that up immediately.

You know I like quoting. Please let me quote the foreword of Maynard Webb, COO of eBay, Inc.

For me, success has meant applying conventional methods and tools in unconventional ways. With that, the chapter, The First 90 Days, resonated deeply with me. When I joined eBay in 1999 as President of eBay Technology, I knew I was walking into problems. The business was taking off like a rocket ship yet there were severe system issues. On my first day on the job, I was chagrined to find CNN in the lobby interviewing Meg Whitman, my new boss, about problems with the site. Not an auspicious beginning. Now conventional wisdom would have said to freeze all product changes and focus on stability and scale. But because of eBay's unusual potential and unique position in the marketplace, we chose to take significant risks and fix the stability and scale problems, while at the same time we accelerated the rate of product development and site changes by 4x. Applying conventional methods in out of the box ways, we were able to fuel the aggressive business growth while rearchitecting the site for infinite scalability. Had we not done so, eBay may not have become the market leader it is today. As these authors will teach you, "Decide and act with a sense of urgency.". "Make aggressive commitments and meet them." "Strive for excellence through continuous improvements." Words to live by.

The rest of the book appears to be a great collection of experience, right from the source. Isn't that what we all need?

I've been seeing a lot of people whining about websites that don't work with a particular web browser (be it MSIE, Firefox, Opera, Safari, Konqueror and even elinks! -- people who only complain and make no practical suggestions). If you only keep the whining part, I was one of them. I actually learned a lot in a year and I'll share what I have learned.

Being the lead developer of several considerably large web applications (next generation and so called Web 2.0 or Ajax applications included) I keep grinning. People will complain. And that makes me sick, so I'm going to devote this entry to zealots. I hope they will like it.

First of all, I was actually wrong with Internet Explorer and Microsoft, there are excellent tools like Microsoft Script Editor that's included with Microsoft Office and Microsoft Visual Studio if you can afford the license fee. Fortunately my employer can, so we are able to use the best tools money can buy. The only problem is to get to know about them. I'd love to apologize, I'd also do it personally, for every single software developer who worked on these products. I really respect what they're doing, it's the company they're working for I'm having trouble with.

Free software zealots often try to stand behind Firefox (or rarely Konqueror) and blame Microsoft for not supporting or behaving different from W3C. You can recognize them on the spot. A screenshot that shows some site that behaves a lot more different than the developer initially intended to, and that screenshot also shows a funky browser theme and a lot of not-so-useful-for-the-casual-web-user extensions installed. They're blindly ignorant yet passionate people. They don't want to know about the rationale behind anything and only demand immediate solutions. We all know some.

Like it or not, Microsoft's more than %90 market share of web browsers is a fact that exists today. Every single Windows deployed has got one installed, and any installation of MSIE adds an icon called "Internet" on the most visible area of the computer screen: the desktop. Zealots can strive to convince another 1% next month, but that's going to take time and web developers (including me) design and implement for today, not for the future.

I have several like-it-or-not sort of facts about Microsoft that I'd love to talk about sometime, about the shiny new Vista and the .NET platform, that I think technically are wonderful achievements in the software industry to some extent but are going to have terrible impacts from several aspects. Those are going to wait. No, I'm not going to spit them out in a single blog entry, don't worry. I also would like to remind you that I'm a developer working 90% of the time on free (as in freedom) software tools and I'm in no way in any connection with Microsoft currently.

Put yourself in the developer's position. A highly talented web developer is not born with the talent, he represents a huge stack of books read and millions of keystrokes, long hours of frustration. Web is a horrible place to target: there are many server platforms, many types of clients and many types of browsers; all with different capabilities. Of course there is a common denominator that applies to everything that could be possibly made to work. But in the IT industry of 21st century, competitive products and development are key to success. In the end, what you have at hand will be forced to work, brutally.

Enough to stand behind the developer, lets get back to zealots. So they are ignorant, and they believe HTML is enough for the web and there's an agreed standard on it and everybody should use it and those who don't stick to the standard are to be doomed to death and god should bless Firefox because it's by far the best. Because the very best website they have developed is their personal website that has a couple animated GIFs (a waving flag, spongebob squarepants shaking his butt, that sort of stuff) and their perception of an interactive website is limited to that, they tend to hate words like Javascript (client side scripting actually), Java applets and ActiveX. Less zealots know about CGI and PHP yet still tend to hate client side scripts.

So the highest ranking challenges zealots face with are probably little visual issues caused by subtle differences in CSS behavior in those two browsers.

They don't know or they just ignore the fact that Microsoft has a permanent chair in W3C. They don't know how web has evolved since 1980. They don't know about browser wars. They don't know about backwards compatibility in software products. Hell, they don't know about software.

I'm most angry for free software zealots. They are spiritual users, yet they completely ignore the philosophy behind free software. It's the free and honest collaboration that makes free software a real success. A bunch of users complaining about something broken is not going to convince a hacker to fix the problem. A detailed bug report, some time spent fixing the issue or a patch -- even a simplest one, at least an attempt, a sign of working brain cells would work perfectly. No screenshots please, we'd love to see people spend some time investigating the problem and report the bug as detailed as possible. We'd love to see that done honestly: a demanding user will more likely be just ignored. Please see Simon Tatham's article on reporting bugs effectively, it's a very good start.

Personally I develop for Firefox and then port to Microsoft Internet Explorer, but it's a matter of taste. Now this would surprise zealots I guess because most of them believe that if you make it work for Firefox it's guaranteed to work on IE too -- which is wrong most of the time. Achieving browser compatibility can be costly and involves extensive testing. It's not surprising for me to see people rely on a single platform, because that costs less. Anyone would go for the cheapest that could possibly work.

In the past years developing cross-browser rich web applications (including Ajax sites) was very frustrating because it was hard to find the experience and exact list of differences between browsers. The browser almost dominating the web client market being proprietary software, it gets even more complex. What you have is a very large, hard to read and comprehend but extensive documentation source called Microsoft Developer Network; and a very large source code of Mozilla's Gecko Rendering Engine (GRE) with much less documentation that you have to compare to each other.

Fortunately someone else has done it. Mozilla Developer Site hosts a document that help developers understand those differences that cause incompatibilities on the web.

Some more people have developed toolkits like Prototype, Dojo and Mochikit that provide a stable ground where rich web applications can be built on. These toys handle web compatibility issues for you. But this stuff is very new to the industry, and it takes time for web developers to get used to these. Until then, lets hope that articles like this would make zealots complain less.

Cheers,

About me

I'm Enver ALTIN, a software developer at Cellenity.

Calendar

January 2007
SuMoTuWeThFrSa
  1 2 3 4 5 6
7 8 910111213
14151617181920
21222324252627
28293031   

Categories

/ (348)
  articles/ (1)
  books/ (7)
  coffee/ (1)
  debian/ (1)
  events/ (6)
  factsoflife/ (12)
  general/ (8)
  gnome/ (16)
  humor/ (21)
  lkd/ (8)
  management/ (1)
  mobile/ (1)
  mono/ (4)
  music/ (7)
  personal/ (34)
  politics/ (26)
  postgresql/ (4)
  programming/ (12)
  projects/ (2)
  technology/ (6)
  tips/ (6)
  travel/ (1)
  work/ (13)

Archives

Links

Popular

Talk slides

License

Creative Commons License
This work is licensed under a Creative Commons Attribution 2.5 License.

Miscellaneous

This site is built on the wonders of Pyblosxom, supposed to be W3C XHTML 1.0 and CSS 1.0 compliant, always handcoded using Vim. The server that hosts this site is powered by Debian GNU/Linux.
.O.
..O
OOO