10 ms·
This is definitely the way I prefer to learn things. I've had a few of successes and one failures doing things this way. Things I learned this way: - PHP, Code
by ssharp 14y ago
This is definitely the way I prefer to learn things. I've had a few of successes and one failures doing things this way. Things I learned this way:
- PHP, CodeIgniter
- Ruby, Rails
- CSS
- Javascript, jQuery
I'm hoping to get into some of the newer JS projects this way as well, node.js, backbone.js, etc.
I think having a deliverable project in mind keeps you focused while learning. It's an extra layer of motivation, but unlike finishing a book, you're left with a real asset. I don't think everyone learns best this way, however, and realize that others may prefer going through book exercises or online tutorials. One drawback I've ran into every time I've learned this way is that you tend to cut corners out of ignorance and end up having to invest time down the road in either learning things your project didn't require or unlearning the bad habits you picked up when you were focused on the end rather than the means.
I will say that I failed miserably when I had an idea for an iPhone app and jumped in head first this way. The process was intensely frustrating and I felt like I spent a lot of time spinning my wheels. Looking back, I would have been much better off working through an intro book on iPhone / Cocoa development than trying to piecemeal educational materials and tutorials. I'm not sure why this one specific process didn't work. I may have been too ambitious or it may just have been entirely out of my wheelhouse, coming from a web-only background.
- hamxiaoz 14y agoI have similar experience. When I built my blog (Jekyll) I knew nothing about css/html so I was constantly tweaking elements in an inefficient way. Now I have finish some basic css/html books/tutorials I have much better understanding what I was doing. When learning new things, reading a book first works best for me. You might feel slow at the beginning, but it'll pay you off in the long run.
- jwdunne 14y agoFor CSS/HTML, things like Firebug and Webkit Inspector can help massively too. You cut out the edit-save-refresh process across two applications out. You can usually cycle across available properties and their valid values too, which makes it even better for learning. Seeing things in real-time as opposed to refreshing over is a much better way to learn, based on my experience. It's a shame we can't do this with more stuff. I guess, in general terms, anything that cuts the time between writing code and seeing results will be a great help to you. Not only that, these tools will stay with you as you progress past a beginner stage since they'll always provide that efficiency boost.
- mstarkman 14y agoYeah, I went through the same process when I created an iPhone app. I struggled at first with Objective-C even though I had a C background. I took a step back and read some books/tutorial and then finally got the app out there.