Skip to content

The Hacker's Guide to Hacking

Lauren Anderson edited this page Aug 30, 2020 · 1 revision

What is a Hack?

In a nutshell: a "hack" is a small project that solves one problem, designed and executed as quickly as possible. Examples of hacks include:

  • a working demo of a new or modified algorithm (example here)
  • an outline of a larger project, with some key features scoped (example here)
  • a new visualization of an old dataset (for example here)
  • a modified algorithm applied to a new dataset
  • a mash-up of two pre-existing pieces of code to perform some new function (example here)
  • Note: Hacks need not be code! Hacks could be other things related to code (e.g. documentation, a logo, ...) or something entirely different (a comic, a video, a popular science article, a poem, field notes etc). This is your change to get creative!

and so on. Feel free to add more examples.

Pro-Tips

Add yours below, please!

  • Be selfish: arrive with a goal, and make sure you achieve it

  • Hacking is a community activity: find someone you can pair code with

  • Do the simplest thing that will work, you can extend it later

  • Love your neighbor: you might be the person they need to solve their problem, and vice versa

  • When discussing, pitch your explanation at the least experienced hacker in the group, and you'll end up better understanding what you're trying to do

Advice for New Hackers, from a New Hacker

What do I wish I knew?

  • Where machine learning/Bayesian inference is used in my field
  • What can I do with my data to try out stuff
  • What tools are out there and how to use (some of) them

What do I think makes a good hack for Astro Hack Week?

  • A clear problem: I have data and I want to do this
  • A set of milestones: I might not be able to get everything done but if I can make this step towards the end goal I’ll be happy :)
  • How useful is this hack: My hack will let me and others do really cool science really quickly vs my hack helped me make 1 plot for my paper/thesis/blog (both are important but it’s about getting the most out of the week)
  • Who can help me: Astrohack week is full of really clever people who are know lots of really cool things. Think about what you can learn from them/what kind of help you’ll need for your hack

What if I don’t have a hack/my hack doesn’t work?

  • Even if your hack backfires, there’s plenty of people with great ideas. Ask if other hack teams need your help/mind if you join and learn about what they’re doing and how to do it

Some more notes:

  • What you say during our hack pitches at the beginning of each afternoon is open and again you have absolutely no obligation to actually work on that. It’s ok to change your mind during the day. It’s also totally fine to work on more than one (or ten!) hacks. Some people will choose to work on one big hack during the whole week. Some others will work on many small diverse hacks. Do what you like!
  • Hack can fail. In fact, you should be proud to show the result of a failed hack at the end of a day during the wrap up session! Hacks are about getting to a result as quickly as possible. Failing fast at a project or idea is a very useful skill for all of us. One of the core goals of Astro Hack Week is learning. It is also ok to show an incomplete/unfinished project/hack during the wrap up session
  • Another core goal is to work with others. Don’t be afraid to ask for help, even if what you ask for might sound basic. Most of the time it is not! And no one will emit a judgement anyway. Please also feel free to join groups and hack with others on their ideas, it’s fun!
  • Hacks can be anything. Some examples: writing documentation for a code (whether it is yours or not!); prototyping an idea; doing a survey of the literature for a range of methods, and comparing them; writing a tutorial for a method; etc. In fact, we encourage you to write tutorials, notes, or code notebooks for anything you learn about during Astro Hack Week. We find that it is a wonderful way to share what you have learned with others, and allow them to learn as well. This is also a concrete outcome that you can show and share after Astro Hack Week. And it might also be useful for future generations of hackers (we find that it does!).

Questions

Write yours here, hopefully someone else will answer, and/or write a new tip!

  • What is not a Hack? Can you give some examples that clarify what might be not so proper for a Hack Week?
  • ...
Clone this wiki locally