2013-03-24 05:01:56
Alex Sadleir
1
Welcome to the GovHack toolkit. This page provides all the information you need to prepare hackfest entries.
2013-03-01 01:11:15
Maxious
2
These tools can be used to make entries like: mobile apps, web apps, data visualisations/infographics
2013-03-24 05:01:56
Alex Sadleir
3
4
2013-03-01 01:11:15
Maxious
5
# General Data Hacking and Programming References {#general-data-hacking-and-programming-references}
2013-03-06 04:05:46
Maxious
6
## The basics of being a data scientist
2013-03-24 05:01:56
Alex Sadleir
7
8
* Have a hypothesis - even if you're making a tool/api that helps people with their questions too, remember what the objective of that is.
2013-03-01 01:11:15
Maxious
9
* Find the people and tools you need to prove/show/find. This rest of this page will help with the latter.
2013-03-24 05:01:56
Alex Sadleir
10
* Analyse and present results - were they what you expected? Do they help explain to others what you have found out? Can present as a interactive data visualisation or a web/mobile application or just a infographic/motion graphics video that tells a story.
2013-03-07 22:18:14
Maxious
11
Please note, there are a combination of Analysis and Visualisation tools in each of the major categories below.
2013-03-21 11:02:25
Maxious
12
2013-03-07 22:18:14
Maxious
13
2013-03-21 11:02:25
Maxious
14
[![](http://www.govhack.org/wp-content/uploads/How-to-participate-in-GovHack_html_m6a65720f-300x199.gif "Data Journalism Diagram")](http://www.govhack.org/wp-content/uploads/How-to-participate-in-GovHack_html_m6a65720f.gif)</dt>
2013-03-07 22:18:14
Maxious
15
Illustration from Data Journalism Handbook, CC BY-SA 3.0</dd>
2013-03-21 11:02:25
Maxious
16
2013-03-07 22:18:14
Maxious
17
2013-03-06 04:05:46
Maxious
18
The best high level reference is the 'Understanding Data' and 'Delivering Data' chapters of the Data Journalism Handbook which is available online for free at
19
20
[datajournalismhandbook.org](http://datajournalismhandbook.org/)
2013-03-07 22:18:14
Maxious
21
22
You can learn the technical skills from scratch in Visualize This: The FlowingData Guide to Design, Visualization, and Statistics by Nathan Yau or for more advanced
2013-04-01 08:05:26
Alex Sadleir
23
2013-03-07 22:18:14
Maxious
24
practical advice check out Data Analysis with Open Source Tools by Philipp K. Janert
2013-03-01 01:11:15
Maxious
25
26
For further reading in this space
2013-03-03 10:00:40
maxious
27
2013-03-01 01:11:15
Maxious
28
[http://flowingdata.com/2012/04/27/data-and-visualization-blogs-worth-following/](http://flowingdata.com/2012/04/27/data-and-visualization-blogs-worth-following/)
2013-03-07 22:18:14
Maxious
29
30
2013-03-01 01:11:15
Maxious
31
**Statistics**
2013-03-24 05:01:56
Alex Sadleir
32
2013-03-01 01:11:15
Maxious
33
[http://greenteapress.com/thinkstats/html/index.html](http://greenteapress.com/thinkstats/html/index.html)
34
2013-03-03 10:00:40
maxious
35
**Programming**
2013-03-01 01:11:15
Maxious
36
37
Programming is valuable skill for manipulating and displaying data.
38
39
Basic tutorials for a variety of languages are available for free online or you can learn
40
41
interactively with websites like [http://www.codecademy.com/](http://www.codecademy.com/#!/exercises/0). for JavaScript or [http://www.learnpython.org/ ](http://www.learnpython.org/)or [http://tryruby.org](http://tryruby.org/)
42
43
[https://developer.mozilla.org/en/JavaScript](https://developer.mozilla.org/en/JavaScript) - especially for web applications and visualisations, you'll need a basic understanding of JS. Common libraries like prototype or jQuery can help
44
45
**Accessibility/User Experience**
46
47
WCAG guidelines not only make a web app accessible but make it a better experience for all users! Even if not making an app, good to consider these things to do and not do: [http://www.w3.org/TR/WCAG/](http://www.w3.org/TR/WCAG/)
48
49
## Who can be a hack day participant
50
- roles; coder, designer UX/graphics
51
2013-03-03 10:00:40
maxious
52
## Definitions
2013-03-01 01:11:15
Maxious
53
- definitions, open licence reuse permissive hacker hack data journalism data bis UCX etc.
2013-03-03 10:00:40
maxious
54
2013-03-01 01:11:15
Maxious
55
## key datasets
56
- key datasets, directory.gov.au gazetter/AEC electorates/suburbs/postcodes/LGAs
57
58
## examples
59
60
## The Open Budget
61
2013-03-24 05:01:56
Alex Sadleir
62
## WeatherTree weather API
63
2013-03-01 01:11:15
Maxious
64
## PlanningAlerts
2013-03-03 10:00:40
maxious
65
66
[![Planning Alerts Screenshot](http://www.govhack.org/wp-content/uploads/How-to-participate-in-GovHack_html_2f0199ff1-300x221.png "Planning Alerts Screenshot")](http://www.govhack.org/wp-content/uploads/How-to-participate-in-GovHack_html_2f0199ff1.png)Description: Planning Alerts takes data from local government development applications and sends alerts to users based on what applications are lodged in their area.
2013-03-01 01:11:15
Maxious
67
2013-03-24 05:01:56
Alex Sadleir
68
Programming Language: Ruby
2013-03-01 01:11:15
Maxious
69
70
Source Control: [Git](https://github.com/openaustralia/planningalerts-app)
71
72
Issue Tracking: [Atlassian JIRA](http://tickets.openaustraliafoundation.org.au/browse/PA/)
73
74
## LobbyLens
75
76
[![](http://www.govhack.org/wp-content/uploads/129-Screenshot-LobbyClue_-_Chromium-300x180.png "LobbyLens screenshot")](http://www.govhack.org/wp-content/uploads/129-Screenshot-LobbyClue_-_Chromium.png)
77
78
Description: Displays connections between government contracts, business details, politician responsibilities, lobbyists, clients of lobbyists, political donors and the location of these entities.
79
80
Programing Language: PHP
81
82
Source Control: SVN (Subversion)
83
2013-03-01 03:43:59
Maxious
84
Issue Tracking: A whiteboard
85
86
## Bus.lambdacomplex.org
87
88
[![](http://www.govhack.org/wp-content/uploads/How-to-participate-in-GovHack_html_3789acae-300x253.jpg "Bus.lambda screenshot")](http://www.govhack.org/wp-content/uploads/How-to-participate-in-GovHack_html_3789acae.jpg)
89
90
Description: Online Canberra Bus Timetables and Trip Planner.
91
92
Programing Language: PHP/Ruby
93
94
Source Control: Git
95
96
Issue Tracking: Github
97
98
99
## Developer Tools For Your Computer {#developer-tools-for-your-computer}
100
101
server admin / technical tools
102
many projects will require some kind of internet presence, webpage etc.
2013-03-24 05:01:56
Alex Sadleir
103
- css framework like bootstrap or zurb foundation
104
video tools, youtube video editor/slideshow, FOSS video editing tools
105
- http://ubuntu-tutorials.com/2008/11/11/relaying-postfix-smtp-via-smtpgmailcom/
2012-09-29 13:05:38
Maxious
106
- amon
107
2013-03-03 10:00:40
maxious
108
### Source Control
109
Git / Subversion
110
111
[![](http://www.govhack.org/wp-content/uploads/Screenshot-at-2012-04-29-172132-300x235.png "Git Screenshot")](http://progit.org/book/)
112
113
[http://progit.org/book/](http://progit.org/book/)
114
115
[http://svnbook.red-bean.com/](http://svnbook.red-bean.com/)
116
117
[http://tortoisesvn.net/](http://tortoisesvn.net/)
118
119
[http://code.google.com/p/tortoisegit/](http://code.google.com/p/tortoisegit/)
120
121
### Task Tracking -
2013-03-07 22:18:14
Maxious
122
123
Issue/task trackers allow you to outline the tasks required for your project and assign them to people to do.
2013-04-01 08:05:26
Alex Sadleir
124
125
[Trello](https://trello.com/) and [Workflowy](https://workflowy.com/) are free, lightweight project management tools suitable for a rapid project!
126
2013-02-28 04:29:45
Maxious
127
## Hosted Developer Tools {#hosted-developer-tools}
2013-03-30 07:15:22
maxious
128
129
Can get many tools (source control, issue tracking) combined into one service cloud hosted so no setup required.
2013-04-01 08:05:26
Alex Sadleir
130
2013-03-01 01:11:15
Maxious
131
### Github
2013-04-01 08:05:26
Alex Sadleir
132
Git obviously but svn/hg interfaces are possible. Provide their own GUI for Windows/OSX or use the variety of Git capable tools
2013-03-24 05:01:56
Alex Sadleir
133
2012-09-29 13:05:38
Maxious
134
### Sourceforge
135
2013-03-24 05:01:56
Alex Sadleir
136
Subversion, Git, Mercurial, Bazaar, CVS, issue tracker, wiki, release file downloads. Unlimited free use for open source projects.
2013-02-27 10:12:02
Alex Sadleir
137
138
You can create your own Sourceforge project at [http://sourceforge.net/](http://sourceforge.net/)
139
140
### Google Code Project Hosting
141
2013-03-03 10:00:40
maxious
142
Git, Mercurial, and Subversion code. Issue tracker, wiki, release file downloads. Unlimited free use for open source projects.
143
144
You can host your Google Code project and get access to developer tools, APIs and documentation at [http://code.google.com/](http://code.google.com/)
145
146
147
2013-03-01 01:11:15
Maxious
148
# API Development {#api-development}
149
2013-03-01 04:32:26
Maxious
150
151
So an API isn't just an XML file ![;)](http://www.govhack.org/wp-includes/images/smilies/icon_wink.gif)
152
153
A good web based data API:
154
2013-03-24 05:01:56
Alex Sadleir
155
* Is logically organised
156
* Can filter returned data
2013-03-01 04:32:26
Maxious
157
* Can return results in different open formats (CSV/JSON etc.)
158
* Is efficient and responsive by using caching and databases appropriately
2013-03-24 05:01:56
Alex Sadleir
159
* Handles errors gracefully
2013-03-30 07:15:22
maxious
160
* Monitors and controls access (to show benefit realised of API and prevent abuse)
161
* Provides appropriate documentation with examples
162
2013-03-24 05:01:56
Alex Sadleir
163
Some people like sensis [http://](http://developers.sensis.com.au/)[developers.sensis.com.<wbr>au</wbr>](http://developers.sensis.com.au/)[/](http://developers.sensis.com.au/) use a provider like[http://](http://mashery.com/)[mashery.com](http://mashery.com/)[/](http://mashery.com/) or [https](https://apigee.com/)[://](https://apigee.com/)[apigee.com](https://apigee.com/) or [http://](http://apiaxle.com/)[apiaxle.com](http://apiaxle.com/)[/](http://apiaxle.com/) or [http://www.3scale.net/](http://www.3scale.net/) which handles making a good API for them.
164