5 ms·
Show HN: Column is a Yeoman generator built for hackathons
- adamdennis 13y agoI'm going to use this on my next hack day for sure.
- matt_creager 13y agoThanks Adam, that's awesome, looking forward to your feedback!
- imjared 13y agoNice! I'll be very opinionated here but thanks for using Swig instead of something more abstracted like Jade. Keeping it as close to HTML as possible definitely speeds up development for me. I'm not usually one for hackathons but definitely do like to spin up mini app ideas and just tinker. I'll give it a shot!
- matt_creager 13y agoThanks, honestly, that was my personal preference intervening too, the goal was to use something that allowed you to drop logic into a template (yup, that's a bad practice but it's a hackathon, so who cares?) and didn't scare of someone potentially unfamiliar with template languages (as you mentioned Jade is very different from HTML at first glance). If you find anything else you think would be useful, let me know. I've got my eye on https://github.com/stephenplusplus/grunt-bower-install https://github.com/stephenplusplus/grunt-bower-install as a means of quickly dropping script tags in, and I think some method for simple heroku / aws deployment might be handy too.
- matt_creager 13y agoColumn, like the majority of the side-projects I've been involved in, is the result of my own personal failures & frustrations. Namely: "Why is it always such a f^*k#ng pain in the ass to get a hackathon group organized!" I'd like to believe the majority of the dev community is regularly participating in hackathons, they should be, hackathons are a fantastic way to put down our day-to-day responsibilities and remind ourselves why we pursued this career in the first place: it's ridiculously fun. Fun to learn, play with new tech and get a bit competitive. You know what isn't fun? Endless discussion over which server-side framework to use, which folder structure makes the most sense, which client-side package management system to use, how to bring everyones preferences together. That stuff has a time and place, but during a hackathon? Not so much. Column is my first attempt to make choices suitable for a hackathon: Which tools will allow us to co-ordinate effectively, to work on different parts of the project without stumbling over each other? It's a start. Let's build tools that enable us to focus on what's important during a hackathon: winning... I mean having fun.
- k3n 13y ago> Endless discussion over which server-side framework to use, which folder structure makes the most sense, which client-side package management system to use, how to bring everyones preferences together. It sounds like the challenge is dealing with different people that have differing opinions on what to use, and with this project you're just saying "Use this, trust me!" and hoping that nobody objects? The answer to the problem is to prescribe as much as you can beforehand, so that there is effectively no room for discussion around these points? It doesn't seem to actually solve any problems around gaining consensus, it just pushes one very opinionated view. Or perhaps I've misunderstood completely.
- matt_creager 13y agoA number of challenges exist, one of them as you mentioned is just a matter of people having different opinions, another is peoples specializations, if you don't frequently work with client-side tools you might not have been introduced to LiveReload for example. Prescribing an approach beforehand is exactly what I'm advocating, the best way I know how, with an example :) I think what we need right now is opinions, mine, yours, anyone with expertise and the willingness to apply it to this problem really, so we can begin the process of iterating on it, improving it. It won't be the best tool for every hackathon, but we can create a solid foundation.
- k3n 13y agoOk, that does make more sense in the context of dealing with those unfamiliar with the problem space. And I agree that it's good to have something to bring to the table, as it can demonstrate the fitness of the proposed solution, or if nothing else, provide a starting point.
- Zypho 13y agoYou're contradicting the problem that you've set out to solve. Now at a hackathon, when debating with my team which frameworks to use etc we now have another scaffolding tool to debate over. This involves those who might not like yeoman, may not prefer the template library you're giving them. As well there will be those who've looked at your repo and simply don't agree with the code your scaffolding. I like the idea, I really do, but the problem you're solving is all wrong. This isn't a solution for teams to get organized, because in the end you're just another member of their team saying "This is whats best". This is a solution for a team who finds themselves at a real-time/node/web-app hackathon working with technologies they don't know and its a quick way to guide them in "A" direction, weather its the right or not they will decide once they learn more.
- robiijn 13y agoNice +1 Will also try this generator at the next hackathon! Thx Matt :)
- matt_creager 13y agoGreat, let me know if you run into any issues! I'm really interested in your feedback, we need an optimal hackathon configuration :)
- CookWithMe 13y agoOne observation: This is indeed a problem for web development, but a non-issue for mobile development. Whether iOS or Android, one guy just clicks "New Project..." in their IDE and pushes it into a git repo (one may have discussions at this point whether to use a public github or a private bitbucket repo...), the others pull it and everyone is ready to go. That said, teams shouldn't only form around ideas, they should also form around technologies to avoid endless discussions. Also, be open to work with a new technology and ask others if they want to do pair programming with the newbie being the observer/navigator. I did this once. After an hour or so I felt I could provide valid input. Also, pair programming is a really good way to get to know another person!
- matt_creager 13y agoWe should take a page out of mobile developments book and provide a pretty graphic that illustrates the 'new project' flow for a web app! Good point, I joke a lot about being 'victorious' at hackathons, but the truth is, knowledge > than a t-shirt :)