2,035 karma · joined October 7, 2010
Have built the first website back in 1997, and started working in the IT industry since in high school.
Worked in online publishing, marketing as well as web hosting before becoming a professional web developer and designer.
Have been an active member of the open source community since then. Contributed to many projects including Ruby on Rails and Slim. For a full list of my contribution, please head over to http://fredwu.me/ and scroll to the bottom of the page.
A developer who has strong focus on code craftsmanship, business values, UI, UX and most importantly, the user.
Web development is not only my job, my career, but is also the cornerstone that defines who I am. Passionate is my keyword!
---
meet.hn/city/au-Melbourne
Socials: - github.com/fredwu - x.com/fredwu
---
[ my public key: https://keybase.io/fredwu; my proof: https://keybase.io/fredwu/sigs/D4CtTh6YYns-_2ASh90CEGaKiZb94-Py4UjQb2sRLIw ]
In this day and age, I would have thought finding the right tool for the right job is common sense. Apparently not.
Agile, among many other things, is not a silver bullet - it never was and it never will be. The key thing is to experiment and find what works for you, your team and your company. Most software projects are done in a team environment - putting a bunch of talented developers and designers together actually isn’t as simple as many seem to think. One example is right out of that original blog post:
> Given that I am not a fan of prescribed process as the solution to our problems, you can infer my opinion of the general quality and effectiveness of those programmers who teach these courses.
From that attitude, I can already see that he is an interesting developer to manage.
A team needs to function efficiently as a team. Having one or two ace developers aren’t going to help a lot if they can’t get along with the others.
Not to mention that people have spent time and effort proving that techniques such as TDD work for certain projects [1].
As many things in life, there are always people who try to take advantage of others. No doubt there are questionable ‘agile consultants’ who try to make a fortune out of uninformed clients. Just because some people aren’t using agile effectively or even correctly, doesn’t mean agile itself is a sham. Developers constantly make mistakes and write shitty code - should we say all the programming languages out there are a sham?
Keep an open mind is important, and a lot of times even necessary. To dismiss agile all together is in my opinion childish, and offensive to others who try to improve things and create more value.
[1] http://research.microsoft.com/en-us/news/features/nagappan-1...
Originally posted at http://fredwu.me/post/20058808238/agile-is-not-a-sham
I personally find the author's view on processes to be very naive - and a bit offensive, it's almost like saying if you employ processes, then you are stupid.
EDIT:
My thoughts in a separate entry: http://news.ycombinator.com/item?id=3765693
Ideally, if one does really well in whiteboard situations then great. But similar to how some engineers give terrible public talks, we can't discount the ones that do get nervous in those situations.
To me personally, not requiring on-the-spot coding tests would make me happy. Compare the following two scenarios:
Company A: During the interview, I was asked to write a short ruby method to solve a problem on the whiteboard. I didn't really do well because I couldn't remember some APIs. Though in the end I still got the job, so I don't really know how effective the whiteboard coding test was.
Company B: During the interview, I was asked to explain the coding logic to solving a problem in Backbone JS on the whiteboard. I was much more comfortable with that, as I didn't have to remember exact APIs or methods to use. During this process, the interviewers got a good sense of my technical ability not just in Backbone JS, but also in JavaScript and MVC in general.