TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: What are projects I can implement to learn a new framwework?

13 pointsby himanshuyover 10 years ago
Got a long list of frameworks/languages for 'Things to learn in 2015'. Few of them are Spring Boot, Atmosphere, Meteor and Go Language. How can I give a structure to my learning? One way of doing it to build common projects in all different technologies/framework. Any suggestions?

9 comments

davismwflover 10 years ago
I usually look at each language&#x2F;framework and see what problem they were designed to solve, and then implement something directly that they were designed for as my first foray. Then I will try something slightly more specific to my own needs. But normally I already have something in mind where I feel that language X will solve it better or framework Y is more suited to this problem. And even when I am just playing almost all the authors have a few examples or use cases they feel their language&#x2F;framework solves really well so I will take a simple one and implement it.<p>At least for me, I found this keeps me honest and using the tool the way it was intended versus bending&#x2F;breaking it for my needs just to say I used it. Then after I mostly understand it I can see how far I can bend it to my needs, when required.
bzalaskyover 10 years ago
To borrow from an article I read earlier today (<a href="http://weblog.raganwald.com/2006/06/my-favourite-interview-question.html" rel="nofollow">http:&#x2F;&#x2F;weblog.raganwald.com&#x2F;2006&#x2F;06&#x2F;my-favourite-interview-q...</a>)... how would you enable two people to play turn based (and&#x2F;or realtime) monopoly (or chess, or any other game) over the web? This will almost certainly be more complicated on the front-end than most apps you&#x27;ll need to build, and complicated enough on the back-end to be non-trivial.
评论 #8792036 未加载
mynameismiekover 10 years ago
Any simple game usually does the trick: snake, Yahtzee, black jack. The rules (requirements) are well defined. The pieces (UI) are well defined. That way you can focus on actually implementing the logic in the language&#x2F;framework of choice. For websites, pick your favorite restaurant and make it. Borrow the text, pictures, etc. and just focus on the code that creates it and not get off on a rabbit trail doing images in paint.net or making up items.
fcanelaover 10 years ago
There is some projects that I usually do to get a feeling of the framework:<p>- Code snippets&#x2F;tasks manager. Pure CRUD. If you want to get yourself dirty: add authentication.<p>- A blog (like SEJeff suggested). If you want to get yourself dirty: try to make it multilingual with SEO.<p>- Syllabication app. Helps me to find how business logic is best placed into app mindset.<p>I have to go, but if you need more examples just say! :)
评论 #8792047 未加载
lsiebertover 10 years ago
As I understand, the classic thing to implement is a todo list. You have CRUD and then need for some sort of storage solution (whether local storage, or DB backed).<p>I usually start really small, and add features&#x2F;refactor as I learn more.
SEJeffover 10 years ago
Build a blog, that is straightforward enough and simple to implement in all of those. When you&#x27;re looking at go, consider gin:<p><a href="https://gin-gonic.github.io/gin/" rel="nofollow">https:&#x2F;&#x2F;gin-gonic.github.io&#x2F;gin&#x2F;</a>
Jeremy1026over 10 years ago
My first project in any new language is to make a Yahtzee clone. To date I have done this in JS, PHP, Lua (for the Playstation Portable), C, Objective-C (for both iOS and OS X).
punkcoderover 10 years ago
I always use project Euler for the learning a language, once you pass that stage I usually go for pet projects.
NameNickHNover 10 years ago
Do something you have need for. It&#x27;ll help with the motivation.