Category Archives: Uncategorized

How to “kill it” at a hackathon

I’ve participated in a lot of hackathons over the last few years and luckily even won a few. (TechCrunch twice, Facebook, Angelhack) Hackathons are a great way to try out a new idea and get immediate feedback from the community.  They’re social, challenging and always a blast.

But sometimes they can be extremely frustrating due to poor planning, crunched time and various other factors. Here are few lesson’s I’ve learned the hard way, but I write this in hopes of saving you some pain.  Here’s what TO DO, if you really want to “kill it” at your next hackathon.

Show Up With An Idea

I can’t even begin to tell you what a bad choice it is to show up with no idea of what you’ll be working on.  I’m going to be stressing this fact, on every bullet point, so here the first time.  Your time is extremely limited. You don’t have time to wander around trying to come up with an idea of what to build.  You should come prepared with at least a vague idea or two, of what you’ll be working on.  Now, I’m not saying you have to have it completely planned and mocked out, but come with a plan.

Also make sure that the problem you are trying to solve is actually a problem.  Ask a few friends if they would use it.  If you can’t find any takers, chances are the judges won’t either.

Sell The Idea, Not The Code

At the end of the day, you’re presenting an idea to the audience and your job is to sell it.  The code doesn’t have to be pretty or work flawlessly.  In fact, no one will most likely ever look at it again.  Focus on what problem your trying to solve and gear all of your effort towards demoing that. Visually.  Sell the crowd and judges on what makes your concept, not your code, amazing and disruptive.

The truest code ever written at a hackathon. Not pretty, but it will work.

Stick To What You Know

A lot of people use a hackathon as a time to try out a new frameworks and even programming languages.  If you goal is to learn, have at it. If you want any possibility of winning, stick to what you know.  Your time is limited and you can’t afford to spend 5 hours learning how to use a new 3rd party API, a new language, or anything else new.

Prepare For Bad WiFi

The wifi will be slow so prepare to work and demo locally.  This gives you the huge advantage of faster iteration cycles during development and a demo which is fast and smooth.  Why hinge your entire project on an uncontrollable external factor?

Deliver A Great Demo

Remember the demo is the ONLY thing any one sees at the end of the day.  Make sure the demo is clear and gets your idea across.  In addition, practice your presentation over and over, making sure you articulate the problem and how your project solves that problem.

With these time saving tips in mind, I wish you all the best in your hackathon endeavors and hope you have a blast at your next hackathon.

Importing Issues from a CSV file in Youtrack

Don’t get me wrong, I think YouTrack is a great tool. But when it came to importing data from my old bug tracking tool to YouTrack, I was banging my head against the wall. Their current instructions are lacking examples and the whole process seems to have holes. So for anyone looking for CLEAR instructions with examples on how to import data from a CSV file into YouTrack, here it is:

1.) Download the latest version of YouTrack’s Python Client Library and unzip it.

2.) Make sure you have Python installed on your computer

3.) Copy this blank CSV file to <unzipped library directory>\python\csvClient

4.) Add all of your data to the blank CSV file mentioned in step 3.

  • If you need to add new columns, make sure that the name matches exactly what’s in YouTrack. E.g. “Estimation” in the CSV matches with “Estimation” in YouTrack
  • The “Issue Id” column should just be auto incrementing numbers
  • The date fields must match the format specified in the “youtrackMapping.py” file mentioned below.  Feel free to update your file if needed

5.) Overwrite the “youtrackMapping.py” file in the <unzipped library directory>\python\csvClient directory with this one.

6.) Execute the following command from the <unzipped library directory>\python\ directory

python csv2youtrack.py csv_file youtrack_url youtrack_login youtrack_password

Here’s what mine looks like python csv2youtrack.py csvClient/import.csv http://test.myjetbrains.com/youtrack youtrack_login youtrack_password

7.) The script will probably take forever to run, but give it time.  If it error’s out, I’ve listed some common errors and solutions below.

Common Errors

Traceback (most recent call last): File "csv2youtrack.py", line 140, in main() File "csv2youtrack.py", line 20, in main csv2youtrack(source_file, target_url, target_login, target_password) File "csv2youtrack.py", line 31, in csv2youtrack source = Client(source_file) File "/Users/tony/Downloads/youtrack-rest-python-library-master 2/python/csvClient/client.py", line 8, in __init__ self._header = self._read_header() File "/Users/tony/Downloads/youtrack-rest-python-library-master 2/python/csvClient/client.py", line 11, in _read_header header = self._get_reader().next() _csv.Error: new-line character seen in unquoted field - do you need to open the file in universal-newline mode?

This occurs when the newline characters in the csv are ill formatted, usually due to Mac OS.  Resave the CSV using Unix or Windows line endings.