docparser 0.0.1 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -0
  3. data/.rubocop.yml +5 -0
  4. data/.travis.yml +3 -0
  5. data/Gemfile +9 -1
  6. data/README.md +11 -4
  7. data/Rakefile +15 -0
  8. data/example.rb +9 -7
  9. data/lib/docparser.rb +1 -0
  10. data/lib/docparser/document.rb +18 -11
  11. data/lib/docparser/output.rb +8 -8
  12. data/lib/docparser/output/html_output.rb +53 -47
  13. data/lib/docparser/output/json_output.rb +8 -3
  14. data/lib/docparser/output/multi_output.rb +4 -8
  15. data/lib/docparser/output/nil_output.rb +21 -0
  16. data/lib/docparser/output/screen_output.rb +2 -1
  17. data/lib/docparser/output/xlsx_output.rb +12 -2
  18. data/lib/docparser/output/yaml_output.rb +6 -1
  19. data/lib/docparser/parser.rb +80 -49
  20. data/lib/docparser/version.rb +1 -1
  21. data/test/lib/docparser/blackbox_test.rb +29 -0
  22. data/test/lib/docparser/document_test.rb +134 -0
  23. data/test/lib/docparser/logging_test.rb +19 -0
  24. data/test/lib/docparser/output/csv_output_test.rb +51 -0
  25. data/test/lib/docparser/output/html_output_test.rb +57 -0
  26. data/test/lib/docparser/output/json_output_test.rb +65 -0
  27. data/test/lib/docparser/output/multi_output_test.rb +80 -0
  28. data/test/lib/docparser/output/nil_output_test.rb +27 -0
  29. data/test/lib/docparser/output/screen_output_test.rb +55 -0
  30. data/test/lib/docparser/output/xlsx_output_test.rb +53 -0
  31. data/test/lib/docparser/output/yaml_output_test.rb +76 -0
  32. data/test/lib/docparser/output_test.rb +85 -0
  33. data/test/lib/docparser/parser_test.rb +197 -0
  34. data/test/lib/docparser/version_test.rb +11 -0
  35. data/test/support/hackaday/dl.rb +4 -0
  36. data/test/support/hackaday/file_1.html +716 -0
  37. data/test/support/hackaday/file_10.html +791 -0
  38. data/test/support/hackaday/file_11.html +787 -0
  39. data/test/support/hackaday/file_12.html +715 -0
  40. data/test/support/hackaday/file_13.html +793 -0
  41. data/test/support/hackaday/file_14.html +718 -0
  42. data/test/support/hackaday/file_15.html +707 -0
  43. data/test/support/hackaday/file_16.html +713 -0
  44. data/test/support/hackaday/file_17.html +715 -0
  45. data/test/support/hackaday/file_18.html +725 -0
  46. data/test/support/hackaday/file_19.html +715 -0
  47. data/test/support/hackaday/file_2.html +793 -0
  48. data/test/support/hackaday/file_20.html +795 -0
  49. data/test/support/hackaday/file_21.html +804 -0
  50. data/test/support/hackaday/file_22.html +722 -0
  51. data/test/support/hackaday/file_23.html +793 -0
  52. data/test/support/hackaday/file_24.html +717 -0
  53. data/test/support/hackaday/file_25.html +715 -0
  54. data/test/support/hackaday/file_26.html +717 -0
  55. data/test/support/hackaday/file_27.html +723 -0
  56. data/test/support/hackaday/file_28.html +711 -0
  57. data/test/support/hackaday/file_29.html +711 -0
  58. data/test/support/hackaday/file_3.html +794 -0
  59. data/test/support/hackaday/file_30.html +715 -0
  60. data/test/support/hackaday/file_31.html +713 -0
  61. data/test/support/hackaday/file_32.html +714 -0
  62. data/test/support/hackaday/file_33.html +716 -0
  63. data/test/support/hackaday/file_34.html +714 -0
  64. data/test/support/hackaday/file_35.html +792 -0
  65. data/test/support/hackaday/file_36.html +719 -0
  66. data/test/support/hackaday/file_37.html +712 -0
  67. data/test/support/hackaday/file_38.html +709 -0
  68. data/test/support/hackaday/file_39.html +808 -0
  69. data/test/support/hackaday/file_4.html +814 -0
  70. data/test/support/hackaday/file_40.html +801 -0
  71. data/test/support/hackaday/file_5.html +715 -0
  72. data/test/support/hackaday/file_6.html +792 -0
  73. data/test/support/hackaday/file_7.html +714 -0
  74. data/test/support/hackaday/file_8.html +717 -0
  75. data/test/support/hackaday/file_9.html +719 -0
  76. data/test/support/test_encoding.html +12 -0
  77. data/test/support/test_encoding2.html +12 -0
  78. data/test/support/test_html.html +16 -0
  79. data/test/support/test_xml.xml +5 -0
  80. data/test/test_helper.rb +14 -0
  81. metadata +126 -3
@@ -0,0 +1,714 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
3
+ <!--
4
+ generated 91 seconds ago
5
+ generated in 0.439 seconds
6
+ served from batcache in 0.002 seconds
7
+ expires in 209 seconds
8
+ -->
9
+ <head profile="http://gmpg.org/xfn/11">
10
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
11
+ <title>Hack a Day — Fresh hacks every day</title>
12
+ <meta name="description" content="Fresh hacks every day" />
13
+ <meta name="robots" content="noodp,noydir" />
14
+ <link rel="Shortcut Icon" href="http://s1.wp.com/wp-content/themes/vip/hackaday2/images/favicon.ico?m=1353160633g" type="image/x-icon" />
15
+ <link rel="stylesheet" href="http://s1.wp.com/wp-content/themes/vip/hackaday2/style.css?m=1363789849g" type="text/css" media="screen" />
16
+
17
+ <meta name="description" content="Fresh hacks every day" />
18
+ <meta name="keywords" content="hall of fame, fpga, nook hacks, internet hacks, marijuana hacks, network hacks, high voltage hacks, palm pre hacks, blackberry hacks, podcasts, virtual reality, drone hacks, lockpicking hacks, interviews, kindle hacks, phone hacks, weekly roundup, reviews, firefox hacks, g1 hacks" />
19
+ <script src='http://r-login.wordpress.com/remote-login.php?action=js&amp;host=hackaday.com&amp;id=4779443&amp;t=1366801061&amp;back=hackaday.com%2Fpage%2F34%2F' type="text/javascript"></script>
20
+ <script type="text/javascript">
21
+ /* <![CDATA[ */
22
+ if ( 'function' === typeof WPRemoteLogin ) {
23
+ document.cookie = "wordpress_test_cookie=test; path=/";
24
+ if ( document.cookie.match( /(;|^)\s*wordpress_test_cookie\=/ ) ) {
25
+ WPRemoteLogin();
26
+ }
27
+ }
28
+ /* ]]> */
29
+ </script>
30
+ <link rel="alternate" type="application/rss+xml" title="Hack a Day &raquo; Feed" href="http://feeds2.feedburner.com/hackaday/LgoM" />
31
+ <link rel="alternate" type="application/rss+xml" title="Hack a Day &raquo; Comments Feed" href="http://hackaday.com/comments/feed/" />
32
+ <script type="text/javascript">
33
+ /* <![CDATA[ */
34
+ function addLoadEvent(func){var oldonload=window.onload;if(typeof window.onload!='function'){window.onload=func;}else{window.onload=function(){oldonload();func();}}}
35
+ /* ]]> */
36
+ </script>
37
+ <link rel="canonical" href="http://hackaday.com/" />
38
+ <link rel='stylesheet' id='all-css-0' href='http://s0.wp.com/_static/??-eJzTLy/QTc7PK0nNK9HPLdUtyClNz8wr1s/JzE4t1s9KLSlITM7WBfP0kouLdfSxKy/ILy7RTctJzCzSLy6pzEklVm1GYlFmXjqMxtBVkpGaC3RGhol+ek5+UmIOSIF9rq2hsZmZuYmxqbFlFgANUUYu' type='text/css' media='all' />
39
+ <script type='text/javascript'>
40
+ /* <![CDATA[ */
41
+ var SafeCommentsAjax = {"ajaxurl":"http:\/\/hackaday.com\/wp-admin\/admin-ajax.php"};
42
+ /* ]]> */
43
+ </script>
44
+ <script type='text/javascript' src='http://s0.wp.com/_static/??-eJyFz0sKAjEMBuALWUsZpjvxLKXGmjp92KQz6umNogtRFAJZ5Et+opeqMPup74B0lDp1aJdnW0da6V9AJQzNMbygL5kh893VQpyAyIVv0/cYzDPC8pdF4Or8UTUgvH5c5QNInp6x6jr1gJk0uT2IrqWxsJSEPX5w0Z1lfZs2ZrB2NIOxY7wBpfljQw=='></script>
45
+ <link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://hackadaycom.wordpress.com/xmlrpc.php?rsd" />
46
+ <link rel="shortcut icon" type="image/x-icon" href="http://0.gravatar.com/blavatar/4f3e6b6daa090af416a1ba595885efd1?s=16" sizes="16x16" />
47
+ <link rel="icon" type="image/x-icon" href="http://0.gravatar.com/blavatar/4f3e6b6daa090af416a1ba595885efd1?s=16" sizes="16x16" />
48
+ <link rel="apple-touch-icon-precomposed" href="http://1.gravatar.com/blavatar/5560f98f805877b0e332f191cb9e0af3?s=114" />
49
+ <link rel='openid.server' href='http://hackadaycom.wordpress.com/?openidserver=1' />
50
+ <link rel='openid.delegate' href='http://hackadaycom.wordpress.com/' />
51
+ <link rel="search" type="application/opensearchdescription+xml" href="http://hackaday.com/osd.xml" title="Hack a Day" />
52
+ <link rel="search" type="application/opensearchdescription+xml" href="http://wordpress.com/opensearch.xml" title="WordPress.com" />
53
+ <style>
54
+ /* <![CDATA[ */
55
+ /* Block: reblog */
56
+
57
+ .reblog-from img { margin: 0 10px 0 0; vertical-align: middle; padding: 0; border: 0; }
58
+ .reblogger-note img.avatar { float: left; padding: 0; border: 0; }
59
+ .reblogger-note-content { margin: 0 0 20px; }
60
+ .reblog-post .wpcom-enhanced-excerpt-content { border-left: 3px solid #eee; padding-left: 15px; }
61
+ .reblog-post ul.thumb-list { display: block; list-style: none; margin: 2px 0; padding: 0; clear: both; }
62
+ .reblog-post ul.thumb-list li { display: inline; margin: 0; padding: 0 1px; border: 0; }
63
+ .reblog-post ul.thumb-list li a { margin: 0; padding: 0; border: 0; }
64
+ .reblog-post ul.thumb-list li img { margin: 0; padding: 0; border: 0; }
65
+
66
+ .reblog-post .wpcom-enhanced-excerpt { clear: both; }
67
+
68
+ .reblog-post .wpcom-enhanced-excerpt address,
69
+ .reblog-post .wpcom-enhanced-excerpt li,
70
+ .reblog-post .wpcom-enhanced-excerpt h1,
71
+ .reblog-post .wpcom-enhanced-excerpt h2,
72
+ .reblog-post .wpcom-enhanced-excerpt h3,
73
+ .reblog-post .wpcom-enhanced-excerpt h4,
74
+ .reblog-post .wpcom-enhanced-excerpt h5,
75
+ .reblog-post .wpcom-enhanced-excerpt h6,
76
+ .reblog-post .wpcom-enhanced-excerpt p { font-size: 100% !important; }
77
+
78
+ .reblog-post .wpcom-enhanced-excerpt blockquote,
79
+ .reblog-post .wpcom-enhanced-excerpt pre,
80
+ .reblog-post .wpcom-enhanced-excerpt code,
81
+ .reblog-post .wpcom-enhanced-excerpt q { font-size: 98% !important; }
82
+
83
+
84
+ /* ]]> */
85
+ </style>
86
+
87
+ <script type="text/javascript">var _sf_startpt=(new Date()).getTime()</script>
88
+ <style>
89
+ .wpcom-related-posts ul li {
90
+ list-style-type: none;
91
+ display: inline-block;
92
+ }
93
+ </style>
94
+ <style type="text/css">.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style>
95
+ <style type="text/css">
96
+ .recentcomments a {
97
+ display: inline !important;
98
+ padding: 0 !important;
99
+ margin: 0 !important;
100
+ }
101
+
102
+ table.recentcommentsavatartop img.avatar, table.recentcommentsavatarend img.avatar {
103
+ border: 0px;
104
+ margin: 0;
105
+ }
106
+
107
+ table.recentcommentsavatartop a, table.recentcommentsavatarend a {
108
+ border: 0px !important;
109
+ background-color: transparent !important;
110
+ }
111
+
112
+ td.recentcommentsavatarend, td.recentcommentsavatartop {
113
+ padding: 0px 0px 1px 0px;
114
+ margin: 0px;
115
+ }
116
+
117
+ td.recentcommentstextend {
118
+ border: none !important;
119
+ padding: 0px 0px 2px 10px;
120
+ }
121
+
122
+ .rtl td.recentcommentstextend {
123
+ padding: 0px 10px 2px 0px;
124
+ }
125
+
126
+ td.recentcommentstexttop {
127
+ border: none !important;
128
+ padding: 0px 0px 0px 10px;
129
+ }
130
+
131
+ .rtl td.recentcommentstexttop {
132
+ padding: 0px 10px 0px 0px;
133
+ }
134
+ </style>
135
+ <meta name="application-name" content="Hack a Day" /><meta name="msapplication-window" content="width=device-width;height=device-height" /><meta name="msapplication-tooltip" content="Fresh hacks every day" /><meta name="msapplication-task" content="name=Subscribe;action-uri=http://feeds2.feedburner.com/hackaday/LgoM;icon-uri=http://0.gravatar.com/blavatar/4f3e6b6daa090af416a1ba595885efd1?s=16" /><style id="syntaxhighlighteranchor"></style>
136
+
137
+ <script>jQuery(document).ready(function($) {
138
+ $("cswap li a").click(function() {
139
+ $("link").attr("href",$(this).attr('rel'));
140
+ return false;
141
+ });
142
+ });</script>
143
+ <meta name="google-site-verification" content="v0_F4q2HixEv6wrQCEKBEbp2Wuj0oI9ywwaN6aoV0JE" />
144
+ </head>
145
+ <body class="home blog paged paged-34 typekit-enabled header-image content-sidebar highlander-enabled highlander-light">
146
+
147
+ <div id="fb-root"></div>
148
+ <script>(function(d, s, id) {
149
+ var js, fjs = d.getElementsByTagName(s)[0];
150
+ if (d.getElementById(id)) return;
151
+ js = d.createElement(s); js.id = id;
152
+ js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
153
+ fjs.parentNode.insertBefore(js, fjs);
154
+ }(document, 'script', 'facebook-jssdk'));</script>
155
+ <div id="wrap">
156
+ <div id="header"><div class="wrap"><div id="title-area"><h1 id="title"><a href="http://hackaday.com/" title="Hack a Day">Hack a Day</a></h1><p id="description">Fresh hacks every day</p></div><!-- end #title-area --><div class="widget-area"><div = "leaderboard">
157
+ <script type="text/javascript"><!--
158
+ google_ad_client = "ca-pub-1812638130783065";
159
+ /* Hackaday, 728x90, created 4/26/08, Leaderboard */
160
+ google_ad_slot = "4036713767";
161
+ google_ad_width = 728;
162
+ google_ad_height = 90;
163
+ //-->
164
+ </script>
165
+ <script type="text/javascript"
166
+ src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
167
+ </script>
168
+ </div>
169
+ <div id="adslice">
170
+
171
+ <script type="text/javascript"><!--
172
+ google_ad_client = "pub-1812638130783065";
173
+ /* Hackaday, 728x15, created 4/26/08, AdSlice */
174
+ google_ad_slot = "0246324944";
175
+ google_ad_width = 728;
176
+ google_ad_height = 15;
177
+ //-->
178
+ </script>
179
+
180
+ <script type="text/javascript"
181
+ src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
182
+ </script>
183
+
184
+ </div></div><!-- end .widget-area --></div><!-- end .wrap --></div><!--end #header--><div id="nav"><div class="wrap"><ul id="menu-main" class="menu menu-primary superfish"><li id="menu-item-90201" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-90201"><a href="http://www.hackaday.com">Home</a></li>
185
+ <li id="menu-item-77211" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-77211"><a href="http://hackaday.com/contact-hack-a-day/">Submit a tip</a></li>
186
+ <li id="menu-item-90210" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-90210"><a href="http://forums.hackaday.com">forums</a></li>
187
+ <li id="menu-item-94591" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-94591"><a href="http://hackaday.com/hackaday-staff/">Hackaday Staff</a></li>
188
+ <li class="right search">
189
+ <form method="get" class="searchform" action="http://hackaday.com/" >
190
+
191
+ <input type="text" value="Search this website &hellip;" name="s" class="s" onfocus="if (this.value == 'Search this website &hellip;') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Search this website &hellip;';}" />
192
+ <input type="submit" class="searchsubmit" value="Search" />
193
+ </form>
194
+ </li></ul></div><!-- end .wrap --></div><div id="inner"><div class="wrap"> <div id="content-sidebar-wrap">
195
+ <div id="content" class="hfeed">
196
+ <div class="post-96089 post type-post status-publish format-standard hentry category-3d-printer-hacks tag-3d-printer tag-botqueue tag-print-server">
197
+
198
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/13/cloud-support-for-fleets-of-3d-printers/" title="Cloud support for fleets of 3D&nbsp;printers" rel="bookmark">Cloud support for fleets of 3D&nbsp;printers</a></h2>
199
+
200
+ <div class="post-info"><span class="date published time" title="2013-03-13T14:00:11+00:00">March 13, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/brianbenchoff/" class="fn n" title="Brian Benchoff" rel="author">Brian Benchoff</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/03/13/cloud-support-for-fleets-of-3d-printers/#comments">15 Comments</a></span> </div> <div class="entry-content">
201
+ <p><img class="aligncenter size-full wp-image-96090" alt="bot" src="http://hackadaycom.files.wordpress.com/2013/03/bot.png?w=580&#038;h=231" width="580" height="231" /></p>
202
+ <p>More than ever, 3D printers are being used for small prototype and production runs, and the normal way of using a 3D printer with a single desktop app is becoming more and more out of date. [Zach 'Hoeken' Smith] has a solution to the frustration of printing out multiples of objects: <a href="http://www.hoektronics.com/2012/09/13/introducing-botqueue-open-distributed-manufacturing/">it&#8217;s called BotQueue</a>, and allows anyone to submit print jobs to multiple 3D printers over the Internet.</p>
203
+ <p>The idea behind BotQueue is to allow anyone to send jobs to a 3D printer over the Internet. Queues and multiple printers are supported, meaning small-scale manufacturing just got a lot easier for anyone dealing with multiple printers.</p>
204
+ <p style="text-align:left;">We&#8217;ve seen <a href="http://hackaday.com/2012/08/23/help-us-decide-if-this-huge-reprap-array-is-the-largest-fleet-to-date/">a few 3D printer fleets</a> that could benefit from an online print server for multiple 3D printers. It&#8217;s not a project meant for everyone &#8211; one 3D printer per person should be enough for just about everybody &#8211; but if you&#8217;re part of a hackerspace with a few printers, we could see this being used to great effect among your fellow makers. You&#8217;re not limited to using the official BotQueue servers, either. You can <a href="https://github.com/Hoektronics/BotQueue">run your own BotQueue from [Zach]&#8216;s git</a></p>
205
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
206
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/3d-printer-hacks/" title="View all posts in 3d Printer hacks" rel="category tag">3d Printer hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/3d-printer/" rel="tag">3d printer</a>, <a href="http://hackaday.com/tag/botqueue/" rel="tag">BotQueue</a>, <a href="http://hackaday.com/tag/print-server/" rel="tag">print server</a></span> </div>
207
+ </div><!-- end .postclass -->
208
+ <div class="post-96071 post type-post status-publish format-standard hentry category-arduino-hacks category-digital-audio-hacks tag-mp3 tag-ping tag-ping-sensor tag-rangefinder tag-ultrasonic">
209
+
210
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/13/no-touch-music-player/" title="No-touch music&nbsp;player" rel="bookmark">No-touch music&nbsp;player</a></h2>
211
+
212
+ <div class="post-info"><span class="date published time" title="2013-03-13T12:01:55+00:00">March 13, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/mikehackaday/" class="fn n" title="Mike Szczys" rel="author">Mike Szczys</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/03/13/no-touch-music-player/#comments">10 Comments</a></span> </div> <div class="entry-content">
213
+ <p><img class="aligncenter size-large wp-image-96072" alt="no-touch-mp3-player" src="http://hackadaycom.files.wordpress.com/2013/03/no-touch-mp3-player.jpg?w=580&#038;h=435" width="580" height="435" /></p>
214
+ <p>This little box not only plays tunes, but it lets you control several aspects of playback without touching a thing. [Thomas Clauser] calls it the LighTouch and we like it because <a href="http://wolfebaine.blogspot.com/2013/03/lightouch.html">it uses inaudible sound to control audible sound</a>.</p>
215
+ <p>We think the pair of cylinders sticking up through the top of this project enclosure will be recognized by most readers as the business end of an ultrasonic rangefinder. This is the only control interface which [Thomas] chose to use. Although he didn&#8217;t write very extensively about the specific control scheme he implemented, the video embedded in his post shows some of the gestures that cause the Arduino inside to change its behavior. For instance, a swipe of the hand at higher level starts playback, swiping at a lower level pauses it. When adjusting the volume the box responds to how close his hand is to that sensor. With this control in place, the music side of these things is simply handled by a music shield he is using.</p>
216
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
217
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/arduino-hacks/" title="View all posts in arduino hacks" rel="category tag">arduino hacks</a>, <a href="http://hackaday.com/category/digital-audio-hacks/" title="View all posts in digital audio hacks" rel="category tag">digital audio hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/mp3/" rel="tag">mp3</a>, <a href="http://hackaday.com/tag/ping/" rel="tag">ping</a>, <a href="http://hackaday.com/tag/ping-sensor/" rel="tag">ping sensor</a>, <a href="http://hackaday.com/tag/rangefinder/" rel="tag">rangefinder</a>, <a href="http://hackaday.com/tag/ultrasonic/" rel="tag">ultrasonic</a></span> </div>
218
+ </div><!-- end .postclass -->
219
+ <div class="post-96052 post type-post status-publish format-standard hentry category-arduino-hacks category-lifehacks tag-mailbox tag-moteino tag-notifier tag-rf">
220
+
221
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/13/mailbox-notifier-texts-when-the-letter-carrier-arrives/" title="Mailbox notifier texts when the letter carrier&nbsp;arrives" rel="bookmark">Mailbox notifier texts when the letter carrier&nbsp;arrives</a></h2>
222
+
223
+ <div class="post-info"><span class="date published time" title="2013-03-13T10:01:35+00:00">March 13, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/mikehackaday/" class="fn n" title="Mike Szczys" rel="author">Mike Szczys</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/03/13/mailbox-notifier-texts-when-the-letter-carrier-arrives/#comments">69 Comments</a></span> </div> <div class="entry-content">
224
+ <p><img class="aligncenter size-large wp-image-96054" alt="mailbox-notifier" src="http://hackadaycom.files.wordpress.com/2013/03/mailbox-notifier.jpg?w=580&#038;h=435" width="580" height="435" /></p>
225
+ <p>[Felix Rusu's] mailbox is on the other side of the street and he&#8217;s got a pretty big front yard. This means checking for mail is not just a pop your head out of the door type of activity. This becomes especially noticeable during the winter months when he has to bundle up and trudge through the snow to see if his letter carrier has been there yet. But he&#8217;s made pointless trips a thing of the past by building <a href="http://lowpowerlab.com/blog/2013/03/01/mailboxnotifier-moteino-based-mail-event-notifier/">a notifier that monitors the mailbox for him</a>.</p>
226
+ <p>He&#8217;s using a Moteino, which is an Arduino clone of his own making. It&#8217;s tiny and features an RF module on the underside of the board which takes care of communicating with a base station inside the house. The module seen above rolls the microcontroller board up along with a 9V battery and a hall effect sensor which can tell if the mailbox door is open or closed. When the Arduino detects a change to that sensor it pushes some data back to the base station which then relays the info to a computer or Raspberry Pi in order to send him a text message. All of this is shown off in the video after the break.</p>
227
+ <p> <a href="http://hackaday.com/2013/03/13/mailbox-notifier-texts-when-the-letter-carrier-arrives/#more-96052" class="more-link">[Read more...]</a></p>
228
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
229
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/arduino-hacks/" title="View all posts in arduino hacks" rel="category tag">arduino hacks</a>, <a href="http://hackaday.com/category/lifehacks/" title="View all posts in lifehacks" rel="category tag">lifehacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/mailbox/" rel="tag">mailbox</a>, <a href="http://hackaday.com/tag/moteino/" rel="tag">moteino</a>, <a href="http://hackaday.com/tag/notifier/" rel="tag">notifier</a>, <a href="http://hackaday.com/tag/rf/" rel="tag">RF</a></span> </div>
230
+ </div><!-- end .postclass -->
231
+ <div align="center">
232
+
233
+
234
+
235
+ <script type="text/javascript"><!--
236
+
237
+ google_ad_client = "ca-pub-1812638130783065";
238
+
239
+ /* Hackaday, 300x250, created 4/26/08, MedRect main column */
240
+
241
+ google_ad_slot = "3449215672";
242
+
243
+ google_ad_width = 300;
244
+
245
+ google_ad_height = 250;
246
+
247
+ //-->
248
+
249
+ </script>
250
+
251
+ <script type="text/javascript"
252
+
253
+ src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
254
+
255
+ </script>
256
+
257
+
258
+
259
+ </div> <div class="post-96057 post type-post status-publish format-standard hentry category-weapons-hacks tag-beretta tag-car tag-china tag-firearm tag-gun tag-handgun tag-rc">
260
+
261
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/13/remote-control-car-that-packs-its-own-beretta/" title="Remote control car that packs its own&nbsp;Beretta" rel="bookmark">Remote control car that packs its own&nbsp;Beretta</a></h2>
262
+
263
+ <div class="post-info"><span class="date published time" title="2013-03-13T08:01:14+00:00">March 13, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/mikehackaday/" class="fn n" title="Mike Szczys" rel="author">Mike Szczys</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/03/13/remote-control-car-that-packs-its-own-beretta/#comments">84 Comments</a></span> </div> <div class="entry-content">
264
+ <p><img class="aligncenter size-large wp-image-96058" alt="remote-control-car-packs-a-beretta" src="http://hackadaycom.files.wordpress.com/2013/03/remote-control-car-packs-a-beretta.jpg?w=580&#038;h=435" width="580" height="435" /></p>
265
+ <p>We&#8217;ve never really thought to ourselves &#8220;This RC car is fun, but it really needs more handguns&#8221;. And if we did, it certainly would not be a built to undertake with students. But to each his own. [Jerod Michel] is a mathematician working in China. He recently built the project seen above with a group of students. Look closely and you&#8217;ll notice that the remote control car includes a remote control Beretta strapped to the side.</p>
266
+ <p>He doesn&#8217;t have a blog post about the project, but you can find a couple of images and his build instructions after the break. The firearm has a motor attached to the trigger that allows it to be fired by tapping into one of the extra channels on the RC car&#8217;s PCB. But you won&#8217;t just be firing blindly. The project also includes a video transmitter which can be viewed from an LCD screen mounted on top of the remote control unit. There&#8217;s even a laser sight that will show what you&#8217;re aiming at.</p>
267
+ <p>We wonder what the recoil of the firearm does to this light-weight vehicle?</p>
268
+ <p><a href="http://hosted.hackaday.com/robot_weapon.txt">Build Instructions</a> (.txt file)</p>
269
+ <p> <a href="http://hackaday.com/2013/03/13/remote-control-car-that-packs-its-own-beretta/#more-96057" class="more-link">[Read more...]</a></p>
270
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
271
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/weapons-hacks/" title="View all posts in weapons hacks" rel="category tag">weapons hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/beretta/" rel="tag">beretta</a>, <a href="http://hackaday.com/tag/car/" rel="tag">car</a>, <a href="http://hackaday.com/tag/china/" rel="tag">china</a>, <a href="http://hackaday.com/tag/firearm/" rel="tag">firearm</a>, <a href="http://hackaday.com/tag/gun/" rel="tag">gun</a>, <a href="http://hackaday.com/tag/handgun/" rel="tag">handgun</a>, <a href="http://hackaday.com/tag/rc/" rel="tag">rc</a></span> </div>
272
+ </div><!-- end .postclass -->
273
+ <div class="post-96063 post type-post status-publish format-standard hentry category-clock-hacks tag-pixel tag-rgb tag-ws2801">
274
+
275
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/13/a-clock-that-uses-sixty-rgb-pixels/" title="A clock that uses sixty RGB&nbsp;pixels" rel="bookmark">A clock that uses sixty RGB&nbsp;pixels</a></h2>
276
+
277
+ <div class="post-info"><span class="date published time" title="2013-03-13T06:01:55+00:00">March 13, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/mikehackaday/" class="fn n" title="Mike Szczys" rel="author">Mike Szczys</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/03/13/a-clock-that-uses-sixty-rgb-pixels/#comments">11 Comments</a></span> </div> <div class="entry-content">
278
+ <p><img class="aligncenter size-large wp-image-96064" alt="OLYMPUS DIGITAL CAMERA" src="http://hackadaycom.files.wordpress.com/2013/03/rgb-pixel-clock.jpg?w=580&#038;h=435" width="580" height="435" /></p>
279
+ <p>Here&#8217;s a project inspired by a highly polished art piece. [Tobias] has been working on his own <a href="http://tobiscorner.floery.net/rgb-pixel-clock-part-4/">RGB LED clock which uses one light for each minute in an hour</a>. He was inspired to start the project after seeing <a href="http://hackaday.com/2010/09/07/equinox-clock/">the Equinox clock</a>. That one used a little PCB for each LED, and included an acrylic bezel and diffusers for each light. With the advent of LED pixel strings assembling one of these for yourself has become quite a bit easier.</p>
280
+ <p>The key part of the project is the laser-cut plywood frame which has a finger between each digit in order to perfectly space the lights. Each pixel is hot glued in place, with the Arduino board which drives them at the center of the frame. These lights are super bright, so [Tobias] also included a light dependent resistor which allows the system to measure ambient light and modulate the pixel brightness accordingly.</p>
281
+ <p>There are four parts to his project post so make sure you take some time to click around in order to get all the gritty details.</p>
282
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
283
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/clock-hacks/" title="View all posts in clock hacks" rel="category tag">clock hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/pixel/" rel="tag">pixel</a>, <a href="http://hackaday.com/tag/rgb/" rel="tag">rgb</a>, <a href="http://hackaday.com/tag/ws2801/" rel="tag">WS2801</a></span> </div>
284
+ </div><!-- end .postclass -->
285
+ <div class="post-96067 post type-post status-publish format-standard hentry category-green-hacks tag-briquette tag-fuel tag-press tag-rocket-stove">
286
+
287
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/13/briquette-press-for-rocket-stove-fuel/" title="Briquette press for rocket stove&nbsp;fuel" rel="bookmark">Briquette press for rocket stove&nbsp;fuel</a></h2>
288
+
289
+ <div class="post-info"><span class="date published time" title="2013-03-13T04:01:33+00:00">March 13, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/mikehackaday/" class="fn n" title="Mike Szczys" rel="author">Mike Szczys</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/03/13/briquette-press-for-rocket-stove-fuel/#comments">19 Comments</a></span> </div> <div class="entry-content">
290
+ <p><img class="aligncenter size-large wp-image-96068" alt="briquette-press-for-rocket-stove" src="http://hackadaycom.files.wordpress.com/2013/03/briquette-press-for-rocket-stove.png?w=580&#038;h=316" width="580" height="316" /></p>
291
+ <p>[Gregory] uses a rocket stove for heating when it&#8217;s cold outside. He&#8217;s been trying out all kinds of different materials as fuel when the idea of <a href="http://www.youtube.com/watch?NR=1&amp;v=Sc5Gl_Hm4O8">making his own briquettes from waste materials</a> came to mind. Obviously the project works. As you can see in the image above, he has just formed a lump of fuel using a mixture of newspaper pulp and sawdust.</p>
292
+ <p>The orange device with the ax handle seen in the background is his own creation. You can see the device in action in the video after the break. In the video comments he also links to a CAD file if you&#8217;re interested in building your own.</p>
293
+ <p>If it&#8217;s a rocket stove you&#8217;re interested in there&#8217;s always the option of <a href="http://hackaday.com/2013/03/05/quick-and-easy-rocket-stove/">building your own</a>.</p>
294
+ <p> <a href="http://hackaday.com/2013/03/13/briquette-press-for-rocket-stove-fuel/#more-96067" class="more-link">[Read more...]</a></p>
295
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
296
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/green-hacks/" title="View all posts in green hacks" rel="category tag">green hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/briquette/" rel="tag">briquette</a>, <a href="http://hackaday.com/tag/fuel/" rel="tag">fuel</a>, <a href="http://hackaday.com/tag/press/" rel="tag">press</a>, <a href="http://hackaday.com/tag/rocket-stove/" rel="tag">rocket stove</a></span> </div>
297
+ </div><!-- end .postclass -->
298
+ <div class="post-96075 post type-post status-publish format-standard hentry category-nintendo-hacks tag-cartridge tag-case tag-lcd tag-new">
299
+
300
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/12/hinged-nes-case-hides-an-integrated-lcd-screen/" title="Hinged NES case hides an integrated LCD&nbsp;screen" rel="bookmark">Hinged NES case hides an integrated LCD&nbsp;screen</a></h2>
301
+
302
+ <div class="post-info"><span class="date published time" title="2013-03-12T20:01:28+00:00">March 12, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/mikehackaday/" class="fn n" title="Mike Szczys" rel="author">Mike Szczys</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/03/12/hinged-nes-case-hides-an-integrated-lcd-screen/#comments">22 Comments</a></span> </div> <div class="entry-content">
303
+ <p><img class="aligncenter size-large wp-image-96077" alt="P1030374_k" src="http://hackadaycom.files.wordpress.com/2013/03/p1030374_k.jpg?w=580&#038;h=434" width="580" height="434" /></p>
304
+ <p>We&#8217;ve sure been seeing a lot of original NES cases used in projects lately. This time around the thing still plays the original cartridges. This was one of the mains goals which [Maenggu] set for himself when <a href="http://vimeo.com/61412267">integrating the LCD screen with the gaming console</a>. There is a quick video clip which shows off the functionality of the device. It&#8217;s embedded after the break along with a few extra images.</p>
305
+ <p>To our eye the NES looks completely unmodified when the case is closed. The cartridge slot still accepts games, but you don&#8217;t have to lower the frame into place once that cartridge has been inserted. The image above shows a ribbon cable connecting the top and bottom halves of the build. It routes the signals for both the LCD screen and the cartridge adapter to the hardware in the base. He mentions that he used the original power supply. We&#8217;re not sure if the original motherboard is used as well or if this is using some type of emulator.</p>
306
+ <p> <a href="http://hackaday.com/2013/03/12/hinged-nes-case-hides-an-integrated-lcd-screen/#more-96075" class="more-link">[Read more...]</a></p>
307
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
308
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/nintendo-hacks/" title="View all posts in nintendo hacks" rel="category tag">nintendo hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/cartridge/" rel="tag">cartridge</a>, <a href="http://hackaday.com/tag/case/" rel="tag">case</a>, <a href="http://hackaday.com/tag/lcd/" rel="tag">lcd</a>, <a href="http://hackaday.com/tag/new/" rel="tag">new</a></span> </div>
309
+ </div><!-- end .postclass -->
310
+ <div class="navigation"><div class="alignleft"><a href="http://hackaday.com/page/35/" >&laquo; Older Posts</a></div><div class="alignright"><a href="http://hackaday.com/page/33/" >Newer Posts &raquo;</a></div></div><!-- end .navigation --> </div><!-- end #content -->
311
+ <div id="sidebar" class="sidebar widget-area">
312
+ <div id=tl_ad>
313
+ <script type="text/javascript"><!--
314
+ google_ad_client = "ca-pub-1812638130783065";
315
+ /* Hackaday, 300x250, created 4/26/08, MedRect sidebar */
316
+ google_ad_slot = "7800245928";
317
+ google_ad_width = 300;
318
+ google_ad_height = 250;
319
+ //-->
320
+ </script>
321
+ <script type="text/javascript"
322
+ src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
323
+ </script>
324
+
325
+ </div>
326
+
327
+
328
+
329
+
330
+
331
+
332
+ <div class="widget">
333
+ <h4>Never Miss a Hack</h4>
334
+ <div class="textwidget">
335
+
336
+ <!-- Place this tag where you want the badge to render. -->
337
+ <div class="g-plus" data-width= "280" data-href="https://plus.google.com/114843073658390316652" data-rel="publisher" data-theme="dark"></div>
338
+ <!-- Place this tag after the last badge tag. -->
339
+ <script type="text/javascript">
340
+ (function() {
341
+ var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
342
+ po.src = 'https://apis.google.com/js/plusone.js';
343
+ var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
344
+ })();
345
+ </script>
346
+
347
+ <div class="fb-like" data-href="https://www.facebook.com/pages/Hack-a-Day/136115233068429?ref=hl" data-send="true" data-width="280" data-show-faces="true" data-colorscheme="dark"></div>
348
+
349
+ <a href="https://twitter.com/hackaday" class="twitter-follow-button" data-show-count="true" data-lang="en" data-size="large">Follow @twitter</a>
350
+ <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
351
+
352
+ <a href="http://feeds2.feedburner.com/hackaday/LgoM" target="_blank"><img src="http://hackadaycom.files.wordpress.com/2012/11/orange.png" border="0"/></a>
353
+ <div class="clear"> </div>
354
+ <!-- Begin MailChimp Signup Form -->
355
+ <link href="http://cdn-images.mailchimp.com/embedcode/slim-081711.css" rel="stylesheet" type="text/css">
356
+
357
+ <div id="mc_embed_signup">
358
+ <form action="http://mahalo.us5.list-manage.com/subscribe/post?u=126b2ab712043075d9bd7210e&amp;id=cb1aa8bd16" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate>
359
+ <label for="mce-EMAIL">Subscribe to our mailing list for sneak previews and behind the scenes info</label>
360
+ <input type="email" value="" name="EMAIL" class="email" id="mce-EMAIL" placeholder="email address" required>
361
+ <div class="clear"><input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button"></div>
362
+ </form>
363
+ </div>
364
+
365
+ <!--End mc_embed_signup-->
366
+ </div>
367
+ </div>
368
+
369
+ <div id="categories-2" class="widget widget_categories"><div class="widget-wrap"><h4 class="widgettitle">Categories</h4>
370
+ <select name='cat' id='cat' class='postform' >
371
+ <option value='-1'>Select Category</option>
372
+ <option class="level-0" value="114554125">3d Printer hacks&nbsp;&nbsp;(116)</option>
373
+ <option class="level-0" value="18020710">android hacks&nbsp;&nbsp;(240)</option>
374
+ <option class="level-0" value="18020705">arduino hacks&nbsp;&nbsp;(1029)</option>
375
+ <option class="level-0" value="27981650">ARM&nbsp;&nbsp;(51)</option>
376
+ <option class="level-0" value="33199679">Ask Hackaday&nbsp;&nbsp;(29)</option>
377
+ <option class="level-0" value="64298109">ATtiny hacks&nbsp;&nbsp;(45)</option>
378
+ <option class="level-0" value="25122024">beer hacks&nbsp;&nbsp;(63)</option>
379
+ <option class="level-0" value="12115263">blackberry hacks&nbsp;&nbsp;(8)</option>
380
+ <option class="level-0" value="10969031">cellphones hacks&nbsp;&nbsp;(337)</option>
381
+ <option class="level-0" value="35745764">chemistry hacks&nbsp;&nbsp;(102)</option>
382
+ <option class="level-0" value="24483654">classic hacks&nbsp;&nbsp;(852)</option>
383
+ <option class="level-0" value="31677810">clock hacks&nbsp;&nbsp;(189)</option>
384
+ <option class="level-0" value="18755632">cnc hacks&nbsp;&nbsp;(341)</option>
385
+ <option class="level-0" value="568165">computer hacks&nbsp;&nbsp;(390)</option>
386
+ <option class="level-0" value="78428">cons&nbsp;&nbsp;(192)</option>
387
+ <option class="level-0" value="5738">contests&nbsp;&nbsp;(136)</option>
388
+ <option class="level-0" value="3923181">cooking hacks&nbsp;&nbsp;(72)</option>
389
+ <option class="level-0" value="10969032">digital audio hacks&nbsp;&nbsp;(422)</option>
390
+ <option class="level-0" value="10969033">digital cameras hacks&nbsp;&nbsp;(415)</option>
391
+ <option class="level-0" value="10969034">downloads hacks&nbsp;&nbsp;(101)</option>
392
+ <option class="level-0" value="107827385">drone hacks&nbsp;&nbsp;(10)</option>
393
+ <option class="level-0" value="63176382">Engine Hacks&nbsp;&nbsp;(31)</option>
394
+ <option class="level-0" value="35890">Featured&nbsp;&nbsp;(72)</option>
395
+ <option class="level-0" value="551890">firefox hacks&nbsp;&nbsp;(23)</option>
396
+ <option class="level-0" value="53446541">FPGA&nbsp;&nbsp;(1)</option>
397
+ <option class="level-0" value="18020562">g1 hacks&nbsp;&nbsp;(26)</option>
398
+ <option class="level-0" value="320557">google hacks&nbsp;&nbsp;(44)</option>
399
+ <option class="level-0" value="10969036">gps hacks&nbsp;&nbsp;(108)</option>
400
+ <option class="level-0" value="24535490">green hacks&nbsp;&nbsp;(152)</option>
401
+ <option class="level-0" value="27311668">Hackaday links&nbsp;&nbsp;(146)</option>
402
+ <option class="level-0" value="21755374">Hackerspaces&nbsp;&nbsp;(93)</option>
403
+ <option class="level-0" value="6310599">HackIt&nbsp;&nbsp;(101)</option>
404
+ <option class="level-0" value="10969037">handhelds hacks&nbsp;&nbsp;(189)</option>
405
+ <option class="level-0" value="79">hardware&nbsp;&nbsp;(249)</option>
406
+ <option class="level-0" value="144422905">High Voltage Hacks&nbsp;&nbsp;(5)</option>
407
+ <option class="level-0" value="66307084">Holiday Hacks&nbsp;&nbsp;(93)</option>
408
+ <option class="level-0" value="10969038">home entertainment hacks&nbsp;&nbsp;(516)</option>
409
+ <option class="level-0" value="5660882">home hacks&nbsp;&nbsp;(705)</option>
410
+ <option class="level-0" value="2708">how-to&nbsp;&nbsp;(135)</option>
411
+ <option class="level-0" value="908478">internet hacks&nbsp;&nbsp;(2)</option>
412
+ <option class="level-0" value="831">Interviews&nbsp;&nbsp;(13)</option>
413
+ <option class="level-0" value="1416772">iphone hacks&nbsp;&nbsp;(176)</option>
414
+ <option class="level-0" value="1275163">ipod hacks&nbsp;&nbsp;(144)</option>
415
+ <option class="level-0" value="344761">kickstarter&nbsp;&nbsp;(29)</option>
416
+ <option class="level-0" value="4157506">Kindle hacks&nbsp;&nbsp;(15)</option>
417
+ <option class="level-0" value="46717088">Kinect hacks&nbsp;&nbsp;(81)</option>
418
+ <option class="level-0" value="10969048">laptops hacks&nbsp;&nbsp;(111)</option>
419
+ <option class="level-0" value="10969055">laser hacks&nbsp;&nbsp;(167)</option>
420
+ <option class="level-0" value="18020716">led hacks&nbsp;&nbsp;(695)</option>
421
+ <option class="level-0" value="10626">lifehacks&nbsp;&nbsp;(54)</option>
422
+ <option class="level-0" value="729674">linux hacks&nbsp;&nbsp;(129)</option>
423
+ <option class="level-0" value="20732807">lockpicking hacks&nbsp;&nbsp;(11)</option>
424
+ <option class="level-0" value="10969060">macs hacks&nbsp;&nbsp;(135)</option>
425
+ <option class="level-0" value="144395979">Marijuana Hacks&nbsp;&nbsp;(2)</option>
426
+ <option class="level-0" value="11284667">Medical hacks&nbsp;&nbsp;(102)</option>
427
+ <option class="level-0" value="139916">Microcontrollers&nbsp;&nbsp;(512)</option>
428
+ <option class="level-0" value="5611793">misc hacks&nbsp;&nbsp;(1747)</option>
429
+ <option class="level-0" value="18020730">multitouch hacks&nbsp;&nbsp;(89)</option>
430
+ <option class="level-0" value="22652725">musical hacks&nbsp;&nbsp;(290)</option>
431
+ <option class="level-0" value="18020722">netbook hacks&nbsp;&nbsp;(50)</option>
432
+ <option class="level-0" value="6166512">Network Hacks&nbsp;&nbsp;(4)</option>
433
+ <option class="level-0" value="103">news&nbsp;&nbsp;(1091)</option>
434
+ <option class="level-0" value="1861880">nintendo ds hacks&nbsp;&nbsp;(34)</option>
435
+ <option class="level-0" value="114555425">nintendo gameboy hacks&nbsp;&nbsp;(90)</option>
436
+ <option class="level-0" value="18020685">nintendo hacks&nbsp;&nbsp;(261)</option>
437
+ <option class="level-0" value="4992726">nintendo wii hacks&nbsp;&nbsp;(78)</option>
438
+ <option class="level-0" value="118011206">Nook Hacks&nbsp;&nbsp;(1)</option>
439
+ <option class="level-0" value="114556430">palm pre hacks&nbsp;&nbsp;(6)</option>
440
+ <option class="level-0" value="245123">parts&nbsp;&nbsp;(72)</option>
441
+ <option class="level-0" value="10969081">peripherals hacks&nbsp;&nbsp;(648)</option>
442
+ <option class="level-0" value="16325149">phone hacks&nbsp;&nbsp;(17)</option>
443
+ <option class="level-0" value="10969088">playstation hacks&nbsp;&nbsp;(120)</option>
444
+ <option class="level-0" value="2060">podcasts&nbsp;&nbsp;(8)</option>
445
+ <option class="level-0" value="10969096">portable audio hacks&nbsp;&nbsp;(66)</option>
446
+ <option class="level-0" value="10969099">portable video hacks&nbsp;&nbsp;(57)</option>
447
+ <option class="level-0" value="588444">psp hacks&nbsp;&nbsp;(47)</option>
448
+ <option class="level-0" value="23971578">radio hacks&nbsp;&nbsp;(137)</option>
449
+ <option class="level-0" value="47">rants&nbsp;&nbsp;(28)</option>
450
+ <option class="level-0" value="69218551">Raspberry Pi&nbsp;&nbsp;(153)</option>
451
+ <option class="level-0" value="21870780">repair hacks&nbsp;&nbsp;(101)</option>
452
+ <option class="level-0" value="309">reviews&nbsp;&nbsp;(19)</option>
453
+ <option class="level-0" value="10969101">robots hacks&nbsp;&nbsp;(874)</option>
454
+ <option class="level-0" value="30302">roundup&nbsp;&nbsp;(35)</option>
455
+ <option class="level-0" value="10969111">security hacks&nbsp;&nbsp;(460)</option>
456
+ <option class="level-0" value="2301">Software Development&nbsp;&nbsp;(91)</option>
457
+ <option class="level-0" value="3796421">software hacks&nbsp;&nbsp;(47)</option>
458
+ <option class="level-0" value="10969116">solar hacks&nbsp;&nbsp;(46)</option>
459
+ <option class="level-0" value="10969121">tablet pcs hacks&nbsp;&nbsp;(40)</option>
460
+ <option class="level-0" value="3075183">teardown&nbsp;&nbsp;(31)</option>
461
+ <option class="level-0" value="10969130">tool hacks&nbsp;&nbsp;(657)</option>
462
+ <option class="level-0" value="25277004">toy hacks&nbsp;&nbsp;(360)</option>
463
+ <option class="level-0" value="10969134">transportation hacks&nbsp;&nbsp;(472)</option>
464
+ <option class="level-0" value="1">Uncategorized&nbsp;&nbsp;(332)</option>
465
+ <option class="level-0" value="3184456">video hacks&nbsp;&nbsp;(211)</option>
466
+ <option class="level-0" value="34942364">Virtual Reality&nbsp;&nbsp;(9)</option>
467
+ <option class="level-0" value="50802420">weapons hacks&nbsp;&nbsp;(63)</option>
468
+ <option class="level-0" value="12552193">wearable hacks&nbsp;&nbsp;(183)</option>
469
+ <option class="level-0" value="39510952">Weekly roundup&nbsp;&nbsp;(18)</option>
470
+ <option class="level-0" value="4891215">wireless hacks&nbsp;&nbsp;(333)</option>
471
+ <option class="level-0" value="7079455">xbox hacks&nbsp;&nbsp;(130)</option>
472
+ </select>
473
+
474
+ <script type='text/javascript'>
475
+ /* <![CDATA[ */
476
+ var dropdown = document.getElementById("cat");
477
+ function onCatChange() {
478
+ if ( dropdown.options[dropdown.selectedIndex].value > 0 ) {
479
+ location.href = "http://hackaday.com/?cat="+dropdown.options[dropdown.selectedIndex].value;
480
+ }
481
+ }
482
+ dropdown.onchange = onCatChange;
483
+ /* ]]> */
484
+ </script>
485
+
486
+ </div></div>
487
+ <div id="featured-post-2" class="widget featuredpost"><div class="widget-wrap"><h4 class="widgettitle">In case you missed it</h4>
488
+ <div class="post-97657 post type-post status-publish format-standard hentry category-3d-printer-hacks category-featured tag-algae tag-bioluminescence tag-dinoflagellate tag-glowing tag-phosphorescence"><a href="http://hackaday.com/2013/04/18/living-night-light-with-glowing-algae/" title="Living night light with glowing&nbsp;algae" class="alignleft"><img width="90" height="61" src="http://hackadaycom.files.wordpress.com/2013/04/thumb1.jpg?w=90" class="attachment-thumbnail" alt="thumb" /></a><h2><a href="http://hackaday.com/2013/04/18/living-night-light-with-glowing-algae/" title="Living night light with glowing&nbsp;algae">Living night light with glowing&nbsp;algae</a></h2><p class="byline post-info"><br /> <span class="post-comments"><a href="http://hackaday.com/2013/04/18/living-night-light-with-glowing-algae/#comments">67 Comments</a></span></p></div><!--end post_class()-->
489
+
490
+ <div class="post-97648 post type-post status-publish format-standard hentry category-3d-printer-hacks category-featured category-virtual-reality-2 tag-3d-printing tag-lulzbot tag-oculus-rift tag-virtual-reality tag-vr"><a href="http://hackaday.com/2013/04/17/3d-printing-sensor-mounts-for-the-oculus-rift/" title="3D Printing sensor mounts for the Oculus&nbsp;Rift" class="alignleft"><img width="90" height="67" src="http://hackadaycom.files.wordpress.com/2013/04/thumb.jpg?w=90" class="attachment-thumbnail" alt="thumb" /></a><h2><a href="http://hackaday.com/2013/04/17/3d-printing-sensor-mounts-for-the-oculus-rift/" title="3D Printing sensor mounts for the Oculus&nbsp;Rift">3D Printing sensor mounts for the Oculus&nbsp;Rift</a></h2><p class="byline post-info"><br /> <span class="post-comments"><a href="http://hackaday.com/2013/04/17/3d-printing-sensor-mounts-for-the-oculus-rift/#comments">7 Comments</a></span></p></div><!--end post_class()-->
491
+
492
+ <div class="post-97564 post type-post status-publish format-standard hentry category-featured category-virtual-reality-2 tag-adaliight tag-ambilight tag-oculus-rift tag-virtual-reality tag-vr"><a href="http://hackaday.com/2013/04/11/hacking-the-oculus-rift-the-oculight/" title="Hacking the Oculus Rift: the&nbsp;Oculight" class="alignleft"><img width="90" height="54" src="http://hackadaycom.files.wordpress.com/2013/04/screen-shot-2013-04-14-at-9-52-43-am.png?w=90" class="attachment-thumbnail" alt="Screen Shot 2013-04-14 at 9.52.43 AM" /></a><h2><a href="http://hackaday.com/2013/04/11/hacking-the-oculus-rift-the-oculight/" title="Hacking the Oculus Rift: the&nbsp;Oculight">Hacking the Oculus Rift: the&nbsp;Oculight</a></h2><p class="byline post-info"><br /> <span class="post-comments"><a href="http://hackaday.com/2013/04/11/hacking-the-oculus-rift-the-oculight/#comments">20 Comments</a></span></p></div><!--end post_class()-->
493
+
494
+ <div class="post-97538 post type-post status-publish format-standard hentry category-featured category-news tag-top-10 tag-wins"><a href="http://hackaday.com/2013/04/11/top-10-best-hacking-scenes-in-movies/" title="Top 10 best hacking scenes in&nbsp;movies" class="alignleft"><img width="90" height="55" src="http://hackadaycom.files.wordpress.com/2013/04/screen-shot-2013-04-14-at-9-51-38-am.png?w=90" class="attachment-thumbnail" alt="Screen Shot 2013-04-14 at 9.51.38 AM" /></a><h2><a href="http://hackaday.com/2013/04/11/top-10-best-hacking-scenes-in-movies/" title="Top 10 best hacking scenes in&nbsp;movies">Top 10 best hacking scenes in&nbsp;movies</a></h2><p class="byline post-info"><br /> <span class="post-comments"><a href="http://hackaday.com/2013/04/11/top-10-best-hacking-scenes-in-movies/#comments">88 Comments</a></span></p></div><!--end post_class()-->
495
+
496
+ <div class="post-97094 post type-post status-publish format-standard hentry category-featured category-news tag-april-fools"><a href="http://hackaday.com/2013/04/01/hackadays-very-first-kickstarter-campaign/" title="Hackaday&#8217;s very first Kickstarter&nbsp;campaign" class="alignleft"><img width="90" height="54" src="http://hackadaycom.files.wordpress.com/2013/03/hackaday-kickstarter.jpg?w=90" class="attachment-thumbnail" alt="hackaday-kickstarter" /></a><h2><a href="http://hackaday.com/2013/04/01/hackadays-very-first-kickstarter-campaign/" title="Hackaday&#8217;s very first Kickstarter&nbsp;campaign">Hackaday&#8217;s very first Kickstarter&nbsp;campaign</a></h2><p class="byline post-info"><br /> <span class="post-comments"><a href="http://hackaday.com/2013/04/01/hackadays-very-first-kickstarter-campaign/#comments">58 Comments</a></span></p></div><!--end post_class()-->
497
+
498
+ <p class="more-from-category"><a href="http://hackaday.com/category/featured/" title="Featured">More Posts from this Category</a></p></div></div>
499
+ <div id="recent-comments-2" class="widget widget_recent_comments"><div class="widget-wrap"><h4 class="widgettitle">Recent comments</h4>
500
+ <ul id="recentcomments">
501
+ <li class="recentcomments">
502
+ echodelta on <a href="http://hackaday.com/2013/04/23/rattle-generator-is-a-new-type-of-dynamo-for-a-bicycle/comment-page-1/#comment-997083">Rattle generator is a new type of dynamo for a&nbsp;bicycle</a> </li>
503
+ <li class="recentcomments">
504
+ <a href='http://jsutton.co.uk' rel='external nofollow' class='url'>James</a> on <a href="http://hackaday.com/2013/04/23/console-radio-given-new-life-with-a-wifi-router-retrofit/comment-page-1/#comment-997080">Console radio given new life with a WiFi router&nbsp;retrofit</a> </li>
505
+ <li class="recentcomments">
506
+ nhede on <a href="http://hackaday.com/2013/04/22/20-pounds-and-a-gut-feeling-yields-a-configurable-rubidium-atomic-clock-source/comment-page-1/#comment-997074">20 pounds and a gut feeling yields a configurable Rubidium atomic clock&nbsp;source</a> </li>
507
+ <li class="recentcomments">
508
+ Dax on <a href="http://hackaday.com/2013/04/23/rattle-generator-is-a-new-type-of-dynamo-for-a-bicycle/comment-page-1/#comment-997071">Rattle generator is a new type of dynamo for a&nbsp;bicycle</a> </li>
509
+ <li class="recentcomments">
510
+ TacticalNinja on <a href="http://hackaday.com/2013/04/23/otm-02-is-a-3d-printed-wristwatch/comment-page-1/#comment-997070">OTM-02 is a 3D printed&nbsp;wristwatch</a> </li>
511
+ <li class="recentcomments">
512
+ Arlet on <a href="http://hackaday.com/2013/04/23/rattle-generator-is-a-new-type-of-dynamo-for-a-bicycle/comment-page-1/#comment-997017">Rattle generator is a new type of dynamo for a&nbsp;bicycle</a> </li>
513
+ <li class="recentcomments">
514
+ Arlet on <a href="http://hackaday.com/2013/04/23/rattle-generator-is-a-new-type-of-dynamo-for-a-bicycle/comment-page-1/#comment-997016">Rattle generator is a new type of dynamo for a&nbsp;bicycle</a> </li>
515
+ <li class="recentcomments">
516
+ <a href='http://smonson.com/' rel='external nofollow' class='url'>Smonson</a> on <a href="http://hackaday.com/2013/04/23/rattle-generator-is-a-new-type-of-dynamo-for-a-bicycle/comment-page-1/#comment-996997">Rattle generator is a new type of dynamo for a&nbsp;bicycle</a> </li>
517
+ <li class="recentcomments">
518
+ <a href='http://twitter.com/admsch' rel='external nofollow' class='url'>Adam Scheuring (@admsch)</a> on <a href="http://hackaday.com/2013/04/23/otm-02-is-a-3d-printed-wristwatch/comment-page-1/#comment-996993">OTM-02 is a 3D printed&nbsp;wristwatch</a> </li>
519
+ <li class="recentcomments">
520
+ JoSSte on <a href="http://hackaday.com/2013/04/23/rattle-generator-is-a-new-type-of-dynamo-for-a-bicycle/comment-page-1/#comment-996990">Rattle generator is a new type of dynamo for a&nbsp;bicycle</a> </li>
521
+ </ul>
522
+ </div></div>
523
+ <div id="calendar-2" class="widget widget_calendar"><div class="widget-wrap"><h4 class="widgettitle">Find Hacks by Date</h4>
524
+ <div id="calendar_wrap"><table id="wp-calendar">
525
+ <caption>April 2013</caption>
526
+ <thead>
527
+ <tr>
528
+ <th scope="col" title="Sunday">S</th>
529
+ <th scope="col" title="Monday">M</th>
530
+ <th scope="col" title="Tuesday">T</th>
531
+ <th scope="col" title="Wednesday">W</th>
532
+ <th scope="col" title="Thursday">T</th>
533
+ <th scope="col" title="Friday">F</th>
534
+ <th scope="col" title="Saturday">S</th>
535
+ </tr>
536
+ </thead>
537
+
538
+ <tfoot>
539
+ <tr>
540
+ <td colspan="3" id="prev"><a href="http://hackaday.com/2013/03/" title="View posts for March 2013">&laquo; Mar</a></td>
541
+ <td class="pad">&nbsp;</td>
542
+ <td colspan="3" id="next" class="pad">&nbsp;</td>
543
+ </tr>
544
+ </tfoot>
545
+
546
+ <tbody>
547
+ <tr>
548
+ <td colspan="1" class="pad">&nbsp;</td><td><a href="http://hackaday.com/2013/04/01/" title="Hackaday&#8217;s very first Kickstarter&nbsp;campaign, Doctor Who-style&nbsp;WiFi, Kindle weather and recycling&nbsp;display, Windmill made from washing machine, 555&nbsp;chip, SNES headphones scream out for Bluetooth&nbsp;control, How-to: turn on a light&nbsp;bulb">1</a></td><td><a href="http://hackaday.com/2013/04/02/" title="An EQ display for a pedal&nbsp;board, Dual displays on a Playstation&nbsp;2, Ask Hackaday: Hacking lingo&nbsp;fails, Cooling a photomultiplier&nbsp;tube, Hackerspace tour: Arch Reactor in St. Louis&nbsp;Missouri, Adafruit launches educational show aimed at&nbsp;kids, CNC Tic Tac&nbsp;Toe, Building a vehicle parking&nbsp;camera, April Fools&#8217; project teaches coworkers not to touch your&nbsp;stuff, SenseLamp automates rooms by replacing light&nbsp;fixtures">2</a></td><td><a href="http://hackaday.com/2013/04/03/" title="Embedded web server is all about clever&nbsp;formatting, Powering the Oculus Rift with&nbsp;USB, Upgrading a router with impeccable soldering&nbsp;skills, Homebuilt Laser Cutter&nbsp;Ideas, Building a&nbsp;Theremincello, Microscope ring light with a number of different&nbsp;features, Hall effect limit switches for a 3D&nbsp;printer, Adding an optical mouse sensor to an autonomous&nbsp;vehicle">3</a></td><td><a href="http://hackaday.com/2013/04/04/" title="Retrotechtacular: The Fourier&nbsp;Series, MP3/USB/Aux hack hidden behind cassette&nbsp;facade, Pranking a hackerspace IRC for April Fool&#8217;s&nbsp;Day, Turning an easter egg hunt into a fox&nbsp;hunt, Wireless Temperature Control for a&nbsp;Microbrewery, Melting Metal with a DIY Foundry&nbsp;Furnace, Top 10 Hacking Failures in movies: part&nbsp;2, Steampunk theremin&nbsp;goggles, High speed circuit design for quantum physics light&nbsp;sensing, Home security hardware makes you the monitoring&nbsp;service">4</a></td><td><a href="http://hackaday.com/2013/04/05/" title="Snowboard goggle HUD displays critical data while falling down a&nbsp;mountain, Electric tricycle build log is like hacker&nbsp;crack, H-bot style 3D printer moves bed for&nbsp;Z-axis, Stapler hack fastens infinitely large sheets of&nbsp;paper, Light Graffiti with Servos and&nbsp;Python">5</a></td><td><a href="http://hackaday.com/2013/04/06/" title="Fixing the worst video game ever: E.T. for Atari&nbsp;2600, Rolling your own minimal USB to serial Arduino&nbsp;programmer, Making PLA stick to a 3D printer build platform by using hairspray or an acetone ABS&nbsp;slurry">6</a></td>
549
+ </tr>
550
+ <tr>
551
+ <td><a href="http://hackaday.com/2013/04/07/" title="Acoustic bass guitar uses water jug and two&nbsp;strings, Solar powered robot mows your lawn while you chill&nbsp;indoors, Hackaday Links: Sunday, April 7th,&nbsp;2013">7</a></td><td><a href="http://hackaday.com/2013/04/08/" title="Another way to look at&nbsp;Charlieplexing, Combo lock uses relays and logic&nbsp;gates, Yamaha SW60XG hack lets you use it as a standalone MIDI&nbsp;device">8</a></td><td><a href="http://hackaday.com/2013/04/09/" title="Synthesizing graphene in your basement&nbsp;laboratory, The RedBull creation contest&nbsp;begins!, Recurve bow make from wood and&nbsp;skis, Wall wart computer&nbsp;mouse">9</a></td><td><a href="http://hackaday.com/2013/04/10/" title="Hacker sends this through the mail to record a video of the&nbsp;process, MIDI pedal project looks as good as it&nbsp;sounds, Perpetual&nbsp;pong">10</a></td><td><a href="http://hackaday.com/2013/04/11/" title="Snowboard propulsion system motors you through the&nbsp;flats, Guitar EQ levels trigger the stage&nbsp;lights, Top 10 best hacking scenes in&nbsp;movies, Automating a mechanical&nbsp;typewriter, Hacking the Oculus Rift: the&nbsp;Oculight">11</a></td><td><a href="http://hackaday.com/2013/04/12/" title="Jeep Wrangler gets pressurized water right out of the&nbsp;bumper, Horribly complicated electric guitar&nbsp;keyboard, Generating electricity from&nbsp;alcohol">12</a></td><td><a href="http://hackaday.com/2013/04/13/" title="Network-controlled fireworks&nbsp;launcher, Working 3D printed stepper&nbsp;motor, SqueezeBerry: a Raspberri Pi powered Squeezebox&nbsp;appliance">13</a></td>
552
+ </tr>
553
+ <tr>
554
+ <td><a href="http://hackaday.com/2013/04/14/" title="Teaching a computer to play Mario&#8230; seemingly through&nbsp;voodoo, Building a replacement for a broken dehumidifier&nbsp;controller, Hackaday Links: Sunday, April 14th,&nbsp;2013">14</a></td><td><a href="http://hackaday.com/2013/04/15/" title="Glowing Easter eggs more fun than a dye&nbsp;job, [FlorianH] shows off MinimaBL, the next generation of his quadcopter&nbsp;project, Original hardware for fifteen consoles jammed into recently completed Project&nbsp;Unity">15</a></td><td><a href="http://hackaday.com/2013/04/16/" title="Tube radio husk gets a web radio&nbsp;transplant, Building a kegerator with visual&nbsp;style, Hacked together Mac isn&#8217;t a&nbsp;hackintosh">16</a></td><td><a href="http://hackaday.com/2013/04/17/" title="Hackerspace security system brings RFID, video feedback, and automatic&nbsp;doors, Apple MagSafe cord&nbsp;repair, 3D Printing sensor mounts for the Oculus&nbsp;Rift, Upgrade a toy keyboard&#8217;s tone&nbsp;production">17</a></td><td><a href="http://hackaday.com/2013/04/18/" title="Hidden servo automates slat-style window&nbsp;blinds, Semi-automatic pick and place&nbsp;machine, Living night light with glowing&nbsp;algae, Pulse Oximeter from LM324, LED, and&nbsp;Photodiode">18</a></td><td><a href="http://hackaday.com/2013/04/19/" title="Measuring the lifespan of&nbsp;LEGO, Replace your project power supplies with recycled Li-Ion cells and a switching&nbsp;regulator, Asynchronous fireflies use few&nbsp;parts">19</a></td><td><a href="http://hackaday.com/2013/04/20/" title="This piggy bank is our stock&nbsp;broker, GUI window manager on an AVR&nbsp;chip, Mood lamp/notifier uses neat modular PCB&nbsp;design">20</a></td>
555
+ </tr>
556
+ <tr>
557
+ <td><a href="http://hackaday.com/2013/04/21/" title="3D printing some sweet&nbsp;music, Drop-in pcb makes Nintendo Four Score a USB&nbsp;joystick, Hackaday Links: Sunday, April 21st,&nbsp;2013">21</a></td><td><a href="http://hackaday.com/2013/04/22/" title="Automatic tubular bells given a MIDI interface&nbsp;too, Connect a Retina display to a regular&nbsp;computer, 20 pounds and a gut feeling yields a configurable Rubidium atomic clock&nbsp;source">22</a></td><td><a href="http://hackaday.com/2013/04/23/" title="Console radio given new life with a WiFi router&nbsp;retrofit, What are the best hacking&nbsp;documentaries?, OTM-02 is a 3D printed&nbsp;wristwatch, Rattle generator is a new type of dynamo for a&nbsp;bicycle">23</a></td><td id="today">24</td><td>25</td><td>26</td><td>27</td>
558
+ </tr>
559
+ <tr>
560
+ <td>28</td><td>29</td><td>30</td>
561
+ <td class="pad" colspan="4">&nbsp;</td>
562
+ </tr>
563
+ </tbody>
564
+ </table></div></div></div>
565
+ <div id=virurl>
566
+ <!-- BEGIN - VIRURL Widget - iFrame Embed Code -->
567
+ <iframe style="border: none; margin: 0; padding: 0; width: 300px; height: 600px;" src="https://www.virurl.com/iframe_widget?t=hackaday&l=5&category=Tech&w=23&u=147555"
568
+ width="300" height="600" scrolling="no" >
569
+ </iframe>
570
+ <!-- END - VIRURL Widget - iFrame Embed Code -->
571
+ </div>
572
+ <br />
573
+ <br />
574
+ <div id=tl_ad_bottom>
575
+ <script type="text/javascript"><!--
576
+ google_ad_client = "ca-pub-1812638130783065";
577
+ /* Hackaday sidebar wide skyscraper */
578
+ google_ad_slot = "1587378096";
579
+ google_ad_width = 160;
580
+ google_ad_height = 600;
581
+ google_ad_region = "test";
582
+ //-->
583
+ </script>
584
+ <script type="text/javascript"
585
+ src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
586
+ </script>
587
+ </div>
588
+
589
+
590
+ <br />
591
+
592
+
593
+
594
+
595
+
596
+
597
+ </div> </div><!-- end #content-sidebar-wrap -->
598
+ </div><!-- end .wrap --></div><!-- end #inner --><div id="footer" class="footer"><div class="wrap"><div class="gototop"><p><a href="#wrap" rel="nofollow">Return to top of page</a></p></div><div class="creds"><p>Copyright &copy; 2013 &middot; <a href="http://www.studiopress.com/" title="Genesis Framework">Genesis Framework</a> &middot; <a href="http://wordpress.org/" title="WordPress">WordPress</a> &middot; <a href="http://hackadaycom.wordpress.com/wp-login.php">Log in</a></p></div></div><!-- end .wrap --></div><!-- end #footer -->
599
+ <script type="text/javascript">
600
+ var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
601
+ document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
602
+ </script>
603
+ <script type="text/javascript">
604
+ var pageTracker = _gat._getTracker("UA-2201445-6");
605
+ pageTracker._trackPageview();
606
+ </script>
607
+ <!-- Start Quantcast tag -->
608
+ <script type="text/javascript">
609
+ _qoptions={
610
+ qacct:"p-cc6zkdHuZwUDM"
611
+ };
612
+ </script>
613
+ <script type="text/javascript"
614
+ src="http://edge.quantserve.com/quant.js"></script>
615
+ <noscript>
616
+ <img src="http://pixel.quantserve.com/pixel/p-cc6zkdHuZwUDM.gif"
617
+ style="display: none;" border="0" height="1" width="1"
618
+ alt="Quantcast"/>
619
+ </noscript></div><!-- end #wrap -->
620
+
621
+ <script type="text/javascript">
622
+ var _qevents = _qevents || [], wpcomQuantcastData = {"qacct":"p-18-mFEk4J448M","labels":",language.en,type.wpcom,vip.hackadaycom"};
623
+ function wpcomQuantcastPixel( labels, options ) {
624
+ var i, defaults = wpcomQuantcastData, data = { event: 'ajax' };
625
+
626
+ labels = labels || '';
627
+ options = options || {};
628
+
629
+ if ( typeof labels != 'string' )
630
+ options = labels;
631
+
632
+ for ( i in defaults ) {
633
+ data[i] = defaults[i];
634
+ }
635
+
636
+ for ( i in options ) {
637
+ data[i] = options[i];
638
+ }
639
+
640
+ if ( data.labels ) {
641
+ data.labels += ',' + labels;
642
+ } else {
643
+ data.labels = labels;
644
+ }
645
+
646
+ _qevents.push( data );
647
+ };
648
+ (function() {var elem = document.createElement('script');elem.src = (document.location.protocol == "https:" ? "https://secure" : "http://edge") + ".quantserve.com/quant.js";elem.async = true;elem.type = "text/javascript";var scpt = document.getElementsByTagName('script')[0];scpt.parentNode.insertBefore(elem, scpt); })();
649
+ _qevents.push( wpcomQuantcastData );
650
+ </script>
651
+ <noscript><div style="display: none;"><img src="//pixel.quantserve.com/pixel/p-18-mFEk4J448M.gif?labels=%2Clanguage.en%2Ctype.wpcom%2Cvip.hackadaycom" height="1" width="1" alt="" /></div></noscript>
652
+
653
+
654
+ <!-- /// LOAD CHARTBEAT /// -->
655
+ <script type="text/javascript">
656
+ var _sf_async_config={};
657
+ _sf_async_config.uid = 2021;
658
+ _sf_async_config.useCanonical = true;
659
+
660
+ (function(){
661
+ function loadChartbeat() {
662
+ window._sf_endpt=(new Date()).getTime();
663
+ var e = document.createElement('script');
664
+ e.setAttribute('language', 'javascript');
665
+ e.setAttribute('type', 'text/javascript');
666
+ e.setAttribute('src',
667
+ (("https:" == document.location.protocol) ? "https://s3.amazonaws.com/" : "http://") +
668
+ "static.chartbeat.com/js/chartbeat.js");
669
+ document.body.appendChild(e);
670
+ }
671
+ var oldonload = window.onload;
672
+ window.onload = (typeof window.onload != 'function') ?
673
+ loadChartbeat : function() { oldonload(); loadChartbeat(); };
674
+ })();
675
+ </script>
676
+ <div style="display:none">
677
+ </div>
678
+ <script type='text/javascript' src='http://s2.wp.com/_static/??-eJylzMsOREAQRuEXMoqgEwvxLC4/qjPVOl3dZh4fO3vrk+/Qz3+m3UW4SFZpxsET/D+3mtEjxQ0CJR8gnIRWOCgrfXm8lcAl0uQRFtbtlR3Cqtegl66smto0xhStPQEw5Dy+'></script>
679
+ <script type="text/javascript">
680
+ // <![CDATA[
681
+ (function() {
682
+ try{
683
+ if ( window.external &&'msIsSiteMode' in window.external) {
684
+ if (window.external.msIsSiteMode()) {
685
+ var jl = document.createElement('script');
686
+ jl.type='text/javascript';
687
+ jl.async=true;
688
+ jl.src='/wp-content/plugins/ie-sitemode/custom-jumplist.php';
689
+ var s = document.getElementsByTagName('script')[0];
690
+ s.parentNode.insertBefore(jl, s);
691
+ }
692
+ }
693
+ }catch(e){}
694
+ })();
695
+ // ]]>
696
+ </script><script src="http://s.stats.wordpress.com/w.js?21" type="text/javascript"></script>
697
+ <script type="text/javascript">
698
+ st_go({'blog':'4779443','v':'wpcom','tz':'-7','user_id':'0','subd':'hackadaycom'});
699
+ function st_vt() {var x=document.createElement("img");x.src="http://stats.wordpress.com/g.gif?blog=4779443&v=wpcomvt&tz=-7&user_id=0&subd=hackadaycom&rand="+Math.random();}
700
+ ex_go({'crypt':'UE40eW5QN0p8M2Y/RE1BNmNJfGhxNCVxUDExYmtXRThKbHcwXTdETWI1alhvb1oseHImN101ZFpEakVpYjlQYVFLYzBaVHRtPz0wXS9bVlFpZ3c1Qn5KSThLNS9lSHNGOE1IJk9+N3xFNWxyT2x+MUpnR1dJcFZJU3xdcVkwSXY4L1M9WWRDWXJ5dThdW0hkLWljOHNxX1I3ZFd0Y2Jta3pLZW04Z1hPP24/LzBvfl1OSXlQZi5beCZtemE/L1QzUEg0aH5aVUdyYTNvODJMVENYJW02Q1d+YjUxNEN+U3E1LE16JVFVK1lEdFBWRE5uWkI9MWlSZTIzNkFwK24='});
701
+ addLoadEvent(function(){linktracker_init('4779443',0);});
702
+ </script>
703
+ <noscript><img src="http://stats.wordpress.com/b.gif?v=noscript" style="height:0px;width:0px;overflow:hidden" alt="" /></noscript>
704
+ <script type="text/javascript">
705
+ // Trigger Quantcast pixel for each Infinite Scroll post load
706
+ if ( 'function' === typeof( jQuery ) ) {
707
+ jQuery( document.body ).on( 'post-load', function() {
708
+ if ( 'function' === typeof( wpcomQuantcastPixel ) )
709
+ wpcomQuantcastPixel();
710
+ } );
711
+ }
712
+ </script>
713
+ </body>
714
+ </html>