This is my first blog post in the OryxDev.NET Community and I thought to start with something that will push people -coders\developers- to a fact that is "There aren't a guy that knows everything and the learning curve for IT people is a bit Longer!" so..work HARD!
this is a part of a Foreword in the book titled "Coder To Developer" by Mike Gunderloy :
"...What drives me crazy is that most software developers don't realize just how little they know about software development.
Take, for example, me.
When I was teenager, as soon as I finished reading Peter Norton's famous guide to programming the IBM-PC in Assembler,I was convinced that I knew everything there was to know about software development in general. Heck, I was ready to start a software company to make a work processor, you see, and it was going to be really good. My imaginary software company was going to have coffee breaks with free donuts every hour. A lot of my daydreams in those days involved donuts.
When I got out of the army, I headed off to collage and got a degree in Computer Science.Now I really knew everything, I knew more than everything, because I had learned a bunch of computer-scientific junk about linear algebra and NP completeness and frigging lambda calculus which was obviously useless, so I thought they must have ran out of useful things to teach us and were scraping the bottom of the barrel.
Nope. At my first job I noticed how many things there are that many Computer Science departments are too snooty to actually teach you. Things like software teamwork. Practical advice about user interface design. Professional tools like source code control, bug tracking database, debuggers, and profilers. Business things. Computer Science departments in the most prestigious institutions just won't teach you this stuff because they consider it "vocational," not academic ... I can sort of understand that attitude. After all, many prestigious undergraduate institutions see their goal as preparing you for life, not teaching you a career, least of all a career in a field that changes so rapidly that any technologies you learn now will be obsolete in a decade.
... You're probably going to have to learn how to do software development on your own. If you're really lucky, you've had some experience working directly with top notch software developers who can teach you this stuff, but most people don't have that opportunity ... Being a software developer means you can take a concept, build a team, set up state of the art development processes, design a software product, the right software product, and produce it. Not just any software product: a high-quality software product that solves a problem and delights your users. With documentation. A web Page. A setup program. Test cases.Norwegian version.Bokmal and Nynorsk ... And then, one day, finally, perhaps when it's too late, you'll wake up and say, "Hmm. Maybe I really don't know what it really takes to develop software." And on that day only, and not one minute before, but on that day and from that day forward, you will have earned the right to call yourself a software developer..."
- Joel Spolsky Founder, Fog Creek Software