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,808 @@
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.310 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=1366801066&amp;back=hackaday.com%2Fpage%2F39%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-39 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-95818 post type-post status-publish format-standard hentry category-hackaday-links tag-arduino tag-gps tag-hackerspace tag-knitting tag-paintball tag-pci-express tag-twitter tag-windows-8">
197
+
198
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/08/hackaday-links-march-8-2013/" title="Hackaday Links: March 8,&nbsp;2013" rel="bookmark">Hackaday Links: March 8,&nbsp;2013</a></h2>
199
+
200
+ <div class="post-info"><span class="date published time" title="2013-03-08T16:01:15+00:00">March 8, 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/08/hackaday-links-march-8-2013/#comments">25 Comments</a></span> </div> <div class="entry-content">
201
+ <h4>Cheap GPS modules</h4>
202
+ <p><img class="aligncenter size-full wp-image-95819" alt="GPS" src="http://hackadaycom.files.wordpress.com/2013/03/gps.jpg?w=470&#038;h=139" width="470" height="139" /></p>
203
+ <p>If you&#8217;re making a GPS-enabled project, you may have noticed the commonly available GPS modules are pretty expensive &#8211; usually around $50. <a href="http://emerythacks.blogspot.com/2013/01/u-blox-pci-5s-cheap-gps-module-for-your.html">Here&#8217;s one for $8</a>. It&#8217;s a U-blox PCI-5S GPS receiver on a PCI Express card. There are test points for serial and USB data, though, so fitting this in your project is a breeze.</p>
204
+ <h4>Grandfather clock makes a giraffe&#8217;s scarf</h4>
205
+ <p><img class="aligncenter size-full wp-image-95821" alt="knit" src="http://hackadaycom.files.wordpress.com/2013/03/knit.jpg?w=480&#038;h=206" width="480" height="206" /></p>
206
+ <p><a href="http://collectiftextile.com/?p=6562">Here&#8217;s a clock project from [Siren Elise Wilhelmsen]</a>. Over the course of 365 days, the clock knits a giant, 2-meter tube of yarn that should be the perfect start for a half-dozen pairs of socks. No video for this, but if you find one, post a comment.</p>
207
+ <h4>A huge hackerspace for Hotlanta</h4>
208
+ <p><img class="aligncenter size-full wp-image-95822" alt="hotlanta" src="http://hackadaycom.files.wordpress.com/2013/03/hotlanta.jpg?w=480&#038;h=160" width="480" height="160" /></p>
209
+ <p>Atlanta is getting a new hackerspace. <a href="http://myinventorclub.com/">It&#8217;s called My Inventor Club</a> and they&#8217;re starting to move into their space. Judging from <a href="http://store.curiousinventor.com/blog/myinventors_club_coming_to_atlanta/">[Scott]&#8216;s pictures</a> of the new space it&#8217;s huge. We can&#8217;t wait for the video tour once they&#8217;re done moving in.</p>
210
+ <h4>Ardino and Windows 8</h4>
211
+ <p><img class="aligncenter size-full wp-image-95825" alt="arduino Uno eega" src="http://hackadaycom.files.wordpress.com/2013/03/duino.jpg?w=580&#038;h=111" width="580" height="111" /></p>
212
+ <p>Windows 8 is&#8230; weird&#8230; and you can&#8217;t install unsigned drivers without a lot of rigamarole. This means installing the Arduino IDE is a pain but <a href="http://www.danyo.ca/arduino-drivers-on-windows-8/">[Dany] has a solution</a>. Reboot into &#8220;test mode&#8221; and you can install unsigned drivers without your computer throwing a hissy fit.</p>
213
+ <h4>Tweet for welts and bruises</h4>
214
+ <p><img class="aligncenter size-full wp-image-95826" alt="IMG_3293" src="http://hackadaycom.files.wordpress.com/2013/03/img_3293.jpeg?w=580&#038;h=218" width="580" height="218" /></p>
215
+ <p>[Zach]&#8216;s boss told him to come up with a Twitter-controlled paintball gun. Why he was asked to build this is beyond us, but <a href="http://istrategylabs.com/2013/03/meet-paintbot-an-arduino-powered-paintball-gun-just-tweet-to-shoot/">the build is still cool</a>. It&#8217;s powered by an Arduino and was built in just 12 hours. If only there was a video stream&#8230;</p>
216
+ <h4>Hey guys, need some help here.</h4>
217
+ <p>Alright, I&#8217;ve got a little problem with component sourcing. I&#8217;m making a &#8216;shield&#8217; for the Raspberry Pi. Does anyone know where I can get really long female headers for the GPIO pins so the board will fit over the USB and Ethernet jacks? <a href="http://brianbenchoff.wordpress.com/2013/03/06/since-i-cared-about-commentors-on-the-internet/">Here&#8217;s the project</a> if you&#8217;re curious. I think the female part of the header needs to be 14mm high at least to fit over the USB port.</p>
218
+ <p>EDIT: Samtec ESQ-113-33-L-D. <a href="https://www.samtec.com/">Here&#8217;s their site</a>. This site is amazing. You can actually&#8230; find things. Completely unique experience here. Thank you, [Richard].</p>
219
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
220
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/hackaday-links/" title="View all posts in Hackaday links" rel="category tag">Hackaday links</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/arduino/" rel="tag">arduino</a>, <a href="http://hackaday.com/tag/gps/" rel="tag">gps</a>, <a href="http://hackaday.com/tag/hackerspace/" rel="tag">hackerspace</a>, <a href="http://hackaday.com/tag/knitting/" rel="tag">knitting</a>, <a href="http://hackaday.com/tag/paintball/" rel="tag">paintball</a>, <a href="http://hackaday.com/tag/pci-express/" rel="tag">pci express</a>, <a href="http://hackaday.com/tag/twitter/" rel="tag">twitter</a>, <a href="http://hackaday.com/tag/windows-8/" rel="tag">WIndows 8</a></span> </div>
221
+ </div><!-- end .postclass -->
222
+ <div class="post-95831 post type-post status-publish format-standard hentry category-kinect-hacks category-led-hacks tag-geodesic tag-kinect tag-rgb-led">
223
+
224
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/08/putting-yourself-inside-a-display/" title="Putting yourself inside a&nbsp;display" rel="bookmark">Putting yourself inside a&nbsp;display</a></h2>
225
+
226
+ <div class="post-info"><span class="date published time" title="2013-03-08T14:01:11+00:00">March 8, 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/08/putting-yourself-inside-a-display/#comments">3 Comments</a></span> </div> <div class="entry-content">
227
+ <p><img class="aligncenter size-full wp-image-95832" alt="dome" src="http://hackadaycom.files.wordpress.com/2013/03/dome.png?w=580&#038;h=303" width="580" height="303" /></p>
228
+ <p>Here&#8217;s an interesting build that combines light, sound, and gesture recognition to make a 360 degree environment of light and sound. It&#8217;s called <a href="http://www.zanecochran.com/bitdome/index.html">The Bit Dome</a>, and while the pictures and video are very cool, we&#8217;re sure it&#8217;s more impressive in real life.</p>
229
+ <p>The dome is constructed of over a hundred triangles made of foam insulation sheet, resulting in a structure that is 10 feet in diameter and seven and a half feet tall. Every corner of these panels has an RGB LED driven by a <a href="http://www.seeedstudio.com/depot/rainbowduino-led-driver-platform-plug-and-shine-p-371.html">Rainboduino</a>, which is in turn controlled by a computer hooked up to a Kinect.</p>
230
+ <p>The process of interacting with the dome begins by stepping inside and activating the calibration process. By having the user point their arms at different points inside the dome, the computer can reliably tell where the user is pointing, and respond when the user cycles through the dome&#8217;s functions.</p>
231
+ <p>There are bunch of things this dome can do, such as allowing the user to conduct an audio-visual light show, run a meditation program, or even play Snake and Pac-Man. You can check out these games and more in the videos after the break.</p>
232
+ <p> <a href="http://hackaday.com/2013/03/08/putting-yourself-inside-a-display/#more-95831" class="more-link">[Read more...]</a></p>
233
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
234
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/kinect-hacks/" title="View all posts in Kinect hacks" rel="category tag">Kinect hacks</a>, <a href="http://hackaday.com/category/led-hacks/" title="View all posts in led hacks" rel="category tag">led hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/geodesic/" rel="tag">geodesic</a>, <a href="http://hackaday.com/tag/kinect/" rel="tag">Kinect</a>, <a href="http://hackaday.com/tag/rgb-led/" rel="tag">RGB LED</a></span> </div>
235
+ </div><!-- end .postclass -->
236
+ <div class="post-95749 post type-post status-publish format-standard hentry category-video-hacks tag-fpga tag-hdmi tag-jitter tag-pipistrello tag-spartan-6">
237
+
238
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/08/pumping-1080p-video-out-of-an-fpga/" title="Pumping 1080p video out of an&nbsp;FPGA" rel="bookmark">Pumping 1080p video out of an&nbsp;FPGA</a></h2>
239
+
240
+ <div class="post-info"><span class="date published time" title="2013-03-08T12:01:40+00:00">March 8, 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/08/pumping-1080p-video-out-of-an-fpga/#comments">13 Comments</a></span> </div> <div class="entry-content">
241
+ <p><img class="aligncenter size-large wp-image-95751" alt="fpga-pumping-1080p" src="http://hackadaycom.files.wordpress.com/2013/03/fpga-pumping-1080p1.jpg?w=337&#038;h=450" width="337" height="450" /></p>
242
+ <p>[Hamster] admits this <a href="http://hamsterworks.co.nz/mediawiki/index.php/Spartan_6_1080p">1080p HDMI hack for an FPGA</a> doesn&#8217;t put a signal that&#8217;s fully up to specifications. But as you can see in the image above it does output a 1920&#215;1080 image at 60 Hz, which is the size and frequency of full HD video. It falls just short due to some jitter, which may be just fine if this is only being used for early prototyping and will be replaced with a dedicated encoder later in the design process.</p>
243
+ <p>Here he&#8217;s chosen a Pipistrello board but thinks that any device which has a Spartan 6 chip with the differential pairs connected to an HDMI socket will work. The difficulty of the task comes in serializing four output channels at 1500 Mb/s each. Because of this just coding your logic isn&#8217;t going to work. After roughing out the design [Hamster] went back in and chose to manually place some of the components to ensure that data from each channel arrives at the same time.</p>
244
+ <p>While you&#8217;re messing with HDMI you may also want to <a href="http://hackaday.com/2012/01/21/overlaying-video-on-encrypted-hdmi-connections/">give this overlay hack a try</a>.</p>
245
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
246
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/video-hacks/" title="View all posts in video hacks" rel="category tag">video hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/fpga/" rel="tag">fpga</a>, <a href="http://hackaday.com/tag/hdmi/" rel="tag">hdmi</a>, <a href="http://hackaday.com/tag/jitter/" rel="tag">jitter</a>, <a href="http://hackaday.com/tag/pipistrello/" rel="tag">pipistrello</a>, <a href="http://hackaday.com/tag/spartan-6/" rel="tag">spartan-6</a></span> </div>
247
+ </div><!-- end .postclass -->
248
+ <div align="center">
249
+
250
+
251
+
252
+ <script type="text/javascript"><!--
253
+
254
+ google_ad_client = "ca-pub-1812638130783065";
255
+
256
+ /* Hackaday, 300x250, created 4/26/08, MedRect main column */
257
+
258
+ google_ad_slot = "3449215672";
259
+
260
+ google_ad_width = 300;
261
+
262
+ google_ad_height = 250;
263
+
264
+ //-->
265
+
266
+ </script>
267
+
268
+ <script type="text/javascript"
269
+
270
+ src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
271
+
272
+ </script>
273
+
274
+
275
+
276
+ </div> <div class="post-95771 post type-post status-publish format-standard hentry category-hackerspaces tag-candy tag-peeps tag-torture">
277
+
278
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/08/hackerspace-develops-ways-to-get-peeps-to-spill-their-secrets/" title="Hackerspace develops ways to get Peeps to spill their&nbsp;secrets" rel="bookmark">Hackerspace develops ways to get Peeps to spill their&nbsp;secrets</a></h2>
279
+
280
+ <div class="post-info"><span class="date published time" title="2013-03-08T10:01:37+00:00">March 8, 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/08/hackerspace-develops-ways-to-get-peeps-to-spill-their-secrets/#comments">37 Comments</a></span> </div> <div class="entry-content">
281
+ <p><img class="aligncenter size-full wp-image-95772" alt="Peep-Electric-Chair-5" src="http://hackadaycom.files.wordpress.com/2013/03/peep-electric-chair-5.jpg?w=567&#038;h=409" width="567" height="409" /></p>
282
+ <p>Whether you call it enhanced interrogation or torture, the subject is a lot less serious when the victim is a sugary confection. The LVL1 Hackerspace in Louisville, Kentucky recently held an event focused on getting Peeps &#8212; the bunny-shaped sugar-covered marshmallow treats &#8212; to spill their guts. Participants <a href="http://wiki.lvl1.org/Enhanced_Peeps_Interrogation_Conference">developed a range of tongue-in-cheek torture devices</a> then demonstrated their functionality on the bunnies.</p>
283
+ <p>You shouldn&#8217;t be surprised that the event posting starts with Peep waterboarding. But from there the rigs do get a lot more creative. For instance, the electric chair above connects the bunny to a stun gun (there&#8217;s no mention of what that big set of capacitors has to do with this. There&#8217;s also an Iron Maiden which is really more of a Plastic Maiden. It subjects the marshmallow to multiple stab woulds using a plastic egg as an enclosure and a hair brush head as the spikes. You can&#8217;t mutilate Peeps without at least one being sent through a microwave. But perhaps our favorite is The Rack. A pair of them were built, one was laser cut and the other was constructed free-hand. Both are a whimsical take on a historically brutal implement.</p>
284
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
285
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/hackerspaces/" title="View all posts in Hackerspaces" rel="category tag">Hackerspaces</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/candy/" rel="tag">candy</a>, <a href="http://hackaday.com/tag/peeps/" rel="tag">peeps</a>, <a href="http://hackaday.com/tag/torture/" rel="tag">torture</a></span> </div>
286
+ </div><!-- end .postclass -->
287
+ <div class="post-95717 post type-post status-publish format-standard hentry category-featured category-lifehacks category-security-hacks tag-pickpocket tag-wallet">
288
+
289
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/08/quick-wallet-hack-adds-pickpocket-alarm/" title="Quick wallet hack adds pickpocket&nbsp;alarm" rel="bookmark">Quick wallet hack adds pickpocket&nbsp;alarm</a></h2>
290
+
291
+ <div class="post-info"><span class="date published time" title="2013-03-08T07:45:56+00:00">March 8, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/calebkraft/" class="fn n" title="Caleb Kraft" rel="author">Caleb Kraft</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/03/08/quick-wallet-hack-adds-pickpocket-alarm/#comments">58 Comments</a></span> </div> <div class="entry-content">
292
+ <p><span class='embed-youtube' style='text-align:center; display: block;'><iframe class='youtube-player' type='text/html' width='470' height='295' src='http://www.youtube.com/embed/qO8eFhkKJy0?version=3&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;wmode=transparent' frameborder='0'></iframe></span></p>
293
+ <p>Recently there were a bunch of videos going around the net about <a href="https://www.youtube.com/watch?v=Ia2b54srRZM">some of the greatest pickpockets in the world</a>. Simply put, if they wanted something you had, they were going to take it and you probably wouldn&#8217;t notice. I&#8217;ve always kept my wallet in my front pocket, and usually with my hand on it, but they even showed them getting around that in the video (you can&#8217;t always be vigilant).</p>
294
+ <p>I had the idea to make some kind of alarm that would go off if anyone but me removed the wallet from my pocket. A quick google search revealed tons of wallet alarms, but I noticed that they all had a credit card form factor(that&#8217;s good) and would make noise when exposed to light(that&#8217;s bad). This represents a problem since the pickpockets in the videos tended not to open the wallets till later at another location. I needed something that would make noise as it was removed from my pocket. Most importantly, I needed the alarm to be located <em>inside</em> the wallet. This immediately makes the wallet undesirable and will hopefully make someone drop it like hot coals.</p>
295
+ <p> <a href="http://hackaday.com/2013/03/08/quick-wallet-hack-adds-pickpocket-alarm/#more-95717" class="more-link">[Read more...]</a></p>
296
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
297
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/featured/" title="View all posts in Featured" rel="category tag">Featured</a>, <a href="http://hackaday.com/category/lifehacks/" title="View all posts in lifehacks" rel="category tag">lifehacks</a>, <a href="http://hackaday.com/category/security-hacks/" title="View all posts in security hacks" rel="category tag">security hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/pickpocket/" rel="tag">pickpocket</a>, <a href="http://hackaday.com/tag/wallet/" rel="tag">wallet</a></span> </div>
298
+ </div><!-- end .postclass -->
299
+ <div class="post-95780 post type-post status-publish format-standard hentry category-cnc-hacks tag-arduino tag-calligraphy tag-g-code tag-grbl tag-pen tag-plotter tag-printer tag-stepper">
300
+
301
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/08/handwriting-suck-build-a-machine-to-do-it-for-you/" title="Handwriting suck? Build a machine to do it for&nbsp;you" rel="bookmark">Handwriting suck? Build a machine to do it for&nbsp;you</a></h2>
302
+
303
+ <div class="post-info"><span class="date published time" title="2013-03-08T04:01:46+00:00">March 8, 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/08/handwriting-suck-build-a-machine-to-do-it-for-you/#comments">72 Comments</a></span> </div> <div class="entry-content">
304
+ <p><img class="aligncenter size-large wp-image-95782" alt="calligraphy-machine" src="http://hackadaycom.files.wordpress.com/2013/03/calligraphy-machine.png?w=580&#038;h=306" width="580" height="306" /></p>
305
+ <p>Children of the information age are doomed to have the worst handwriting just for lack of use if nothing more. But some students at Olin College harnessed technology to find a solution to that problem. Meet Herald, <a href="http://calligraphybyherald.wix.com/herald">a CNC machine that can produce beautiful calligraphy</a>.</p>
306
+ <p>The machine uses a gantry to move the writing tip along the X and Y axes. The flexible-nib calligraphy pen is mounted on a sprocket which rotates the tip onto the writing surface, taking care of the third axis. The rig was beautifully rendered from their CAD drawings, then tweaked to ensure the smoothest motion possible before the quintet of Sophomores began the physical build.</p>
307
+ <p>The drive hardware is very simple yet it produces great results. It uses an Arduino along with three stepper motor drivers. There are also limiting switches to protect the hardware from runaway code. The software interface designed by the team lets the user cut and paste their text, and select a font, font size, alignment, etc. It then converts the text to G-code and pushes it to the Arduino where <a href="https://github.com/grbl/grbl">the GRBL package</a> takes care of business.</p>
308
+ <p>Don&#8217;t miss the device in action, writing out a [Langston Hughes] work in the clip after the break.</p>
309
+ <p> <a href="http://hackaday.com/2013/03/08/handwriting-suck-build-a-machine-to-do-it-for-you/#more-95780" class="more-link">[Read more...]</a></p>
310
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
311
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/cnc-hacks/" title="View all posts in cnc hacks" rel="category tag">cnc hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/arduino/" rel="tag">arduino</a>, <a href="http://hackaday.com/tag/calligraphy/" rel="tag">calligraphy</a>, <a href="http://hackaday.com/tag/g-code/" rel="tag">g-code</a>, <a href="http://hackaday.com/tag/grbl/" rel="tag">grbl</a>, <a href="http://hackaday.com/tag/pen/" rel="tag">pen</a>, <a href="http://hackaday.com/tag/plotter/" rel="tag">plotter</a>, <a href="http://hackaday.com/tag/printer/" rel="tag">printer</a>, <a href="http://hackaday.com/tag/stepper/" rel="tag">stepper</a></span> </div>
312
+ </div><!-- end .postclass -->
313
+ <div class="post-95777 post type-post status-publish format-standard hentry category-cellphones-hacks category-tool-hacks tag-cell-phone tag-charger tag-drill tag-emergency tag-human-powered">
314
+
315
+ <h2 class="entry-title"><a href="http://hackaday.com/2013/03/07/human-powered-emergency-cell-phone-charger/" title="Human powered emergency cell phone&nbsp;charger" rel="bookmark">Human powered emergency cell phone&nbsp;charger</a></h2>
316
+
317
+ <div class="post-info"><span class="date published time" title="2013-03-07T20:01:42+00:00">March 7, 2013</span> By <span class="author vcard"><span class="fn"><a href="http://hackaday.com/author/platinumfungi/" class="fn n" title="Ryan Fitzpatrick" rel="author">Ryan Fitzpatrick</a></span></span> <span class="post-comments"><a href="http://hackaday.com/2013/03/07/human-powered-emergency-cell-phone-charger/#comments">33 Comments</a></span> </div> <div class="entry-content">
318
+ <p><img class="alignnone wp-image-95781" alt="Emergency-human-powered-cell-phone-charger" src="http://hackadaycom.files.wordpress.com/2013/03/emergency-human-powered-cell-phone-charger.jpg?w=470&#038;h=264" width="470" height="264" /></p>
319
+ <p>Power outage? For the average citizen it&#8217;s very easy to take electricity for granted. Go a few hours or more without it though, and you&#8217;ll suddenly be reminded just what a luxury it is. During an emergency situation, sometimes you have to come up with alternative methods to get the job done. <a href="http://www.instructables.com/id/Make-an-Emergency-Phone-Charger-MacGyver-Style/?ALLSTEPS">This human powered cell phone charger </a>is a great example.</p>
320
+ <p>Using just a few ordinary around the house items, [<a href="http://www.instructables.com/member/The+King+of+Random/">The King of Random</a>] turned a cordless electric drill into a human powered electrical generator. If the drill is run in reverse and cranked by hand, the generated energy can be transferred through the battery terminals to a connected device.  So, he cut a USB charger cable in half and wired it up to the terminals to be able to charge his cell phone. Some yarn, a salad fork, a mixing beater, a scrap 2&#8243;x4&#8243;, some aluminum foil, and scotch tape were the only other materials he used. Using this technique, a totally dead phone battery was charged in around 3 hours.</p>
321
+ <p>Remember that this method is only intended to be used in an emergency, not as every day practice. Using these methods could potentially overheat or damage your gear, so be careful.</p>
322
+ <p>Check out the MacGyver worthy video tutorial after the break.</p>
323
+ <p>[via <a href="http://www.neatorama.com/">Neatorama</a>]</p>
324
+ <p> <a href="http://hackaday.com/2013/03/07/human-powered-emergency-cell-phone-charger/#more-95777" class="more-link">[Read more...]</a></p>
325
+ <div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"></div> </div><!-- end .entry-content -->
326
+ <div class="post-meta"><span class="categories">Filed Under: <a href="http://hackaday.com/category/cellphones-hacks/" title="View all posts in cellphones hacks" rel="category tag">cellphones hacks</a>, <a href="http://hackaday.com/category/tool-hacks/" title="View all posts in tool hacks" rel="category tag">tool hacks</a></span> <span class="tags">Tagged With: <a href="http://hackaday.com/tag/cell-phone/" rel="tag">cell phone</a>, <a href="http://hackaday.com/tag/charger/" rel="tag">charger</a>, <a href="http://hackaday.com/tag/drill/" rel="tag">drill</a>, <a href="http://hackaday.com/tag/emergency/" rel="tag">emergency</a>, <a href="http://hackaday.com/tag/human-powered/" rel="tag">human-powered</a></span> </div>
327
+ </div><!-- end .postclass -->
328
+ <div class="navigation"><div class="alignleft"><a href="http://hackaday.com/page/40/" >&laquo; Older Posts</a></div><div class="alignright"><a href="http://hackaday.com/page/38/" >Newer Posts &raquo;</a></div></div><!-- end .navigation --> </div><!-- end #content -->
329
+ <div id="sidebar" class="sidebar widget-area">
330
+ <div id=tl_ad>
331
+ <script type="text/javascript"><!--
332
+ google_ad_client = "ca-pub-1812638130783065";
333
+ /* Hackaday, 300x250, created 4/26/08, MedRect sidebar */
334
+ google_ad_slot = "7800245928";
335
+ google_ad_width = 300;
336
+ google_ad_height = 250;
337
+ //-->
338
+ </script>
339
+ <script type="text/javascript"
340
+ src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
341
+ </script>
342
+
343
+ </div>
344
+
345
+
346
+
347
+
348
+
349
+
350
+ <div class="widget">
351
+ <h4>Never Miss a Hack</h4>
352
+ <div class="textwidget">
353
+
354
+ <!-- Place this tag where you want the badge to render. -->
355
+ <div class="g-plus" data-width= "280" data-href="https://plus.google.com/114843073658390316652" data-rel="publisher" data-theme="dark"></div>
356
+ <!-- Place this tag after the last badge tag. -->
357
+ <script type="text/javascript">
358
+ (function() {
359
+ var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
360
+ po.src = 'https://apis.google.com/js/plusone.js';
361
+ var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
362
+ })();
363
+ </script>
364
+
365
+ <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>
366
+
367
+ <a href="https://twitter.com/hackaday" class="twitter-follow-button" data-show-count="true" data-lang="en" data-size="large">Follow @twitter</a>
368
+ <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>
369
+
370
+ <a href="http://feeds2.feedburner.com/hackaday/LgoM" target="_blank"><img src="http://hackadaycom.files.wordpress.com/2012/11/orange.png" border="0"/></a>
371
+ <div class="clear"> </div>
372
+ <!-- Begin MailChimp Signup Form -->
373
+ <link href="http://cdn-images.mailchimp.com/embedcode/slim-081711.css" rel="stylesheet" type="text/css">
374
+
375
+ <div id="mc_embed_signup">
376
+ <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>
377
+ <label for="mce-EMAIL">Subscribe to our mailing list for sneak previews and behind the scenes info</label>
378
+ <input type="email" value="" name="EMAIL" class="email" id="mce-EMAIL" placeholder="email address" required>
379
+ <div class="clear"><input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button"></div>
380
+ </form>
381
+ </div>
382
+
383
+ <!--End mc_embed_signup-->
384
+ </div>
385
+ </div>
386
+
387
+ <div id="categories-2" class="widget widget_categories"><div class="widget-wrap"><h4 class="widgettitle">Categories</h4>
388
+ <select name='cat' id='cat' class='postform' >
389
+ <option value='-1'>Select Category</option>
390
+ <option class="level-0" value="114554125">3d Printer hacks&nbsp;&nbsp;(116)</option>
391
+ <option class="level-0" value="18020710">android hacks&nbsp;&nbsp;(240)</option>
392
+ <option class="level-0" value="18020705">arduino hacks&nbsp;&nbsp;(1029)</option>
393
+ <option class="level-0" value="27981650">ARM&nbsp;&nbsp;(51)</option>
394
+ <option class="level-0" value="33199679">Ask Hackaday&nbsp;&nbsp;(29)</option>
395
+ <option class="level-0" value="64298109">ATtiny hacks&nbsp;&nbsp;(45)</option>
396
+ <option class="level-0" value="25122024">beer hacks&nbsp;&nbsp;(63)</option>
397
+ <option class="level-0" value="12115263">blackberry hacks&nbsp;&nbsp;(8)</option>
398
+ <option class="level-0" value="10969031">cellphones hacks&nbsp;&nbsp;(337)</option>
399
+ <option class="level-0" value="35745764">chemistry hacks&nbsp;&nbsp;(102)</option>
400
+ <option class="level-0" value="24483654">classic hacks&nbsp;&nbsp;(852)</option>
401
+ <option class="level-0" value="31677810">clock hacks&nbsp;&nbsp;(189)</option>
402
+ <option class="level-0" value="18755632">cnc hacks&nbsp;&nbsp;(341)</option>
403
+ <option class="level-0" value="568165">computer hacks&nbsp;&nbsp;(390)</option>
404
+ <option class="level-0" value="78428">cons&nbsp;&nbsp;(192)</option>
405
+ <option class="level-0" value="5738">contests&nbsp;&nbsp;(136)</option>
406
+ <option class="level-0" value="3923181">cooking hacks&nbsp;&nbsp;(72)</option>
407
+ <option class="level-0" value="10969032">digital audio hacks&nbsp;&nbsp;(422)</option>
408
+ <option class="level-0" value="10969033">digital cameras hacks&nbsp;&nbsp;(415)</option>
409
+ <option class="level-0" value="10969034">downloads hacks&nbsp;&nbsp;(101)</option>
410
+ <option class="level-0" value="107827385">drone hacks&nbsp;&nbsp;(10)</option>
411
+ <option class="level-0" value="63176382">Engine Hacks&nbsp;&nbsp;(31)</option>
412
+ <option class="level-0" value="35890">Featured&nbsp;&nbsp;(72)</option>
413
+ <option class="level-0" value="551890">firefox hacks&nbsp;&nbsp;(23)</option>
414
+ <option class="level-0" value="53446541">FPGA&nbsp;&nbsp;(1)</option>
415
+ <option class="level-0" value="18020562">g1 hacks&nbsp;&nbsp;(26)</option>
416
+ <option class="level-0" value="320557">google hacks&nbsp;&nbsp;(44)</option>
417
+ <option class="level-0" value="10969036">gps hacks&nbsp;&nbsp;(108)</option>
418
+ <option class="level-0" value="24535490">green hacks&nbsp;&nbsp;(152)</option>
419
+ <option class="level-0" value="27311668">Hackaday links&nbsp;&nbsp;(146)</option>
420
+ <option class="level-0" value="21755374">Hackerspaces&nbsp;&nbsp;(93)</option>
421
+ <option class="level-0" value="6310599">HackIt&nbsp;&nbsp;(101)</option>
422
+ <option class="level-0" value="10969037">handhelds hacks&nbsp;&nbsp;(189)</option>
423
+ <option class="level-0" value="79">hardware&nbsp;&nbsp;(249)</option>
424
+ <option class="level-0" value="144422905">High Voltage Hacks&nbsp;&nbsp;(5)</option>
425
+ <option class="level-0" value="66307084">Holiday Hacks&nbsp;&nbsp;(93)</option>
426
+ <option class="level-0" value="10969038">home entertainment hacks&nbsp;&nbsp;(516)</option>
427
+ <option class="level-0" value="5660882">home hacks&nbsp;&nbsp;(705)</option>
428
+ <option class="level-0" value="2708">how-to&nbsp;&nbsp;(135)</option>
429
+ <option class="level-0" value="908478">internet hacks&nbsp;&nbsp;(2)</option>
430
+ <option class="level-0" value="831">Interviews&nbsp;&nbsp;(13)</option>
431
+ <option class="level-0" value="1416772">iphone hacks&nbsp;&nbsp;(176)</option>
432
+ <option class="level-0" value="1275163">ipod hacks&nbsp;&nbsp;(144)</option>
433
+ <option class="level-0" value="344761">kickstarter&nbsp;&nbsp;(29)</option>
434
+ <option class="level-0" value="4157506">Kindle hacks&nbsp;&nbsp;(15)</option>
435
+ <option class="level-0" value="46717088">Kinect hacks&nbsp;&nbsp;(81)</option>
436
+ <option class="level-0" value="10969048">laptops hacks&nbsp;&nbsp;(111)</option>
437
+ <option class="level-0" value="10969055">laser hacks&nbsp;&nbsp;(167)</option>
438
+ <option class="level-0" value="18020716">led hacks&nbsp;&nbsp;(695)</option>
439
+ <option class="level-0" value="10626">lifehacks&nbsp;&nbsp;(54)</option>
440
+ <option class="level-0" value="729674">linux hacks&nbsp;&nbsp;(129)</option>
441
+ <option class="level-0" value="20732807">lockpicking hacks&nbsp;&nbsp;(11)</option>
442
+ <option class="level-0" value="10969060">macs hacks&nbsp;&nbsp;(135)</option>
443
+ <option class="level-0" value="144395979">Marijuana Hacks&nbsp;&nbsp;(2)</option>
444
+ <option class="level-0" value="11284667">Medical hacks&nbsp;&nbsp;(102)</option>
445
+ <option class="level-0" value="139916">Microcontrollers&nbsp;&nbsp;(512)</option>
446
+ <option class="level-0" value="5611793">misc hacks&nbsp;&nbsp;(1747)</option>
447
+ <option class="level-0" value="18020730">multitouch hacks&nbsp;&nbsp;(89)</option>
448
+ <option class="level-0" value="22652725">musical hacks&nbsp;&nbsp;(290)</option>
449
+ <option class="level-0" value="18020722">netbook hacks&nbsp;&nbsp;(50)</option>
450
+ <option class="level-0" value="6166512">Network Hacks&nbsp;&nbsp;(4)</option>
451
+ <option class="level-0" value="103">news&nbsp;&nbsp;(1091)</option>
452
+ <option class="level-0" value="1861880">nintendo ds hacks&nbsp;&nbsp;(34)</option>
453
+ <option class="level-0" value="114555425">nintendo gameboy hacks&nbsp;&nbsp;(90)</option>
454
+ <option class="level-0" value="18020685">nintendo hacks&nbsp;&nbsp;(261)</option>
455
+ <option class="level-0" value="4992726">nintendo wii hacks&nbsp;&nbsp;(78)</option>
456
+ <option class="level-0" value="118011206">Nook Hacks&nbsp;&nbsp;(1)</option>
457
+ <option class="level-0" value="114556430">palm pre hacks&nbsp;&nbsp;(6)</option>
458
+ <option class="level-0" value="245123">parts&nbsp;&nbsp;(72)</option>
459
+ <option class="level-0" value="10969081">peripherals hacks&nbsp;&nbsp;(648)</option>
460
+ <option class="level-0" value="16325149">phone hacks&nbsp;&nbsp;(17)</option>
461
+ <option class="level-0" value="10969088">playstation hacks&nbsp;&nbsp;(120)</option>
462
+ <option class="level-0" value="2060">podcasts&nbsp;&nbsp;(8)</option>
463
+ <option class="level-0" value="10969096">portable audio hacks&nbsp;&nbsp;(66)</option>
464
+ <option class="level-0" value="10969099">portable video hacks&nbsp;&nbsp;(57)</option>
465
+ <option class="level-0" value="588444">psp hacks&nbsp;&nbsp;(47)</option>
466
+ <option class="level-0" value="23971578">radio hacks&nbsp;&nbsp;(137)</option>
467
+ <option class="level-0" value="47">rants&nbsp;&nbsp;(28)</option>
468
+ <option class="level-0" value="69218551">Raspberry Pi&nbsp;&nbsp;(153)</option>
469
+ <option class="level-0" value="21870780">repair hacks&nbsp;&nbsp;(101)</option>
470
+ <option class="level-0" value="309">reviews&nbsp;&nbsp;(19)</option>
471
+ <option class="level-0" value="10969101">robots hacks&nbsp;&nbsp;(874)</option>
472
+ <option class="level-0" value="30302">roundup&nbsp;&nbsp;(35)</option>
473
+ <option class="level-0" value="10969111">security hacks&nbsp;&nbsp;(460)</option>
474
+ <option class="level-0" value="2301">Software Development&nbsp;&nbsp;(91)</option>
475
+ <option class="level-0" value="3796421">software hacks&nbsp;&nbsp;(47)</option>
476
+ <option class="level-0" value="10969116">solar hacks&nbsp;&nbsp;(46)</option>
477
+ <option class="level-0" value="10969121">tablet pcs hacks&nbsp;&nbsp;(40)</option>
478
+ <option class="level-0" value="3075183">teardown&nbsp;&nbsp;(31)</option>
479
+ <option class="level-0" value="10969130">tool hacks&nbsp;&nbsp;(657)</option>
480
+ <option class="level-0" value="25277004">toy hacks&nbsp;&nbsp;(360)</option>
481
+ <option class="level-0" value="10969134">transportation hacks&nbsp;&nbsp;(472)</option>
482
+ <option class="level-0" value="1">Uncategorized&nbsp;&nbsp;(332)</option>
483
+ <option class="level-0" value="3184456">video hacks&nbsp;&nbsp;(211)</option>
484
+ <option class="level-0" value="34942364">Virtual Reality&nbsp;&nbsp;(9)</option>
485
+ <option class="level-0" value="50802420">weapons hacks&nbsp;&nbsp;(63)</option>
486
+ <option class="level-0" value="12552193">wearable hacks&nbsp;&nbsp;(183)</option>
487
+ <option class="level-0" value="39510952">Weekly roundup&nbsp;&nbsp;(18)</option>
488
+ <option class="level-0" value="4891215">wireless hacks&nbsp;&nbsp;(333)</option>
489
+ <option class="level-0" value="7079455">xbox hacks&nbsp;&nbsp;(130)</option>
490
+ </select>
491
+
492
+ <script type='text/javascript'>
493
+ /* <![CDATA[ */
494
+ var dropdown = document.getElementById("cat");
495
+ function onCatChange() {
496
+ if ( dropdown.options[dropdown.selectedIndex].value > 0 ) {
497
+ location.href = "http://hackaday.com/?cat="+dropdown.options[dropdown.selectedIndex].value;
498
+ }
499
+ }
500
+ dropdown.onchange = onCatChange;
501
+ /* ]]> */
502
+ </script>
503
+
504
+ </div></div>
505
+ <div id="featured-post-2" class="widget featuredpost"><div class="widget-wrap"><h4 class="widgettitle">In case you missed it</h4>
506
+ <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()-->
507
+
508
+ <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()-->
509
+
510
+ <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()-->
511
+
512
+ <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()-->
513
+
514
+ <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()-->
515
+
516
+ <p class="more-from-category"><a href="http://hackaday.com/category/featured/" title="Featured">More Posts from this Category</a></p></div></div>
517
+ <div id="recent-comments-2" class="widget widget_recent_comments"><div class="widget-wrap"><h4 class="widgettitle">Recent comments</h4>
518
+ <ul id="recentcomments">
519
+ <li class="recentcomments">
520
+ 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>
521
+ <li class="recentcomments">
522
+ <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>
523
+ <li class="recentcomments">
524
+ 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>
525
+ <li class="recentcomments">
526
+ 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>
527
+ <li class="recentcomments">
528
+ 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>
529
+ <li class="recentcomments">
530
+ 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>
531
+ <li class="recentcomments">
532
+ 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>
533
+ <li class="recentcomments">
534
+ <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>
535
+ <li class="recentcomments">
536
+ <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>
537
+ <li class="recentcomments">
538
+ 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>
539
+ </ul>
540
+ </div></div>
541
+ <div id="calendar-2" class="widget widget_calendar"><div class="widget-wrap"><h4 class="widgettitle">Find Hacks by Date</h4>
542
+ <div id="calendar_wrap"><table id="wp-calendar">
543
+ <caption>April 2013</caption>
544
+ <thead>
545
+ <tr>
546
+ <th scope="col" title="Sunday">S</th>
547
+ <th scope="col" title="Monday">M</th>
548
+ <th scope="col" title="Tuesday">T</th>
549
+ <th scope="col" title="Wednesday">W</th>
550
+ <th scope="col" title="Thursday">T</th>
551
+ <th scope="col" title="Friday">F</th>
552
+ <th scope="col" title="Saturday">S</th>
553
+ </tr>
554
+ </thead>
555
+
556
+ <tfoot>
557
+ <tr>
558
+ <td colspan="3" id="prev"><a href="http://hackaday.com/2013/03/" title="View posts for March 2013">&laquo; Mar</a></td>
559
+ <td class="pad">&nbsp;</td>
560
+ <td colspan="3" id="next" class="pad">&nbsp;</td>
561
+ </tr>
562
+ </tfoot>
563
+
564
+ <tbody>
565
+ <tr>
566
+ <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
567
+ Doctor Who-style&nbsp;WiFi
568
+ Kindle weather and recycling&nbsp;display
569
+ Windmill made from washing machine, 555&nbsp;chip
570
+ SNES headphones scream out for Bluetooth&nbsp;control
571
+ 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
572
+ Dual displays on a Playstation&nbsp;2
573
+ Ask Hackaday: Hacking lingo&nbsp;fails
574
+ Cooling a photomultiplier&nbsp;tube
575
+ Hackerspace tour: Arch Reactor in St. Louis&nbsp;Missouri
576
+ Adafruit launches educational show aimed at&nbsp;kids
577
+ CNC Tic Tac&nbsp;Toe
578
+ Building a vehicle parking&nbsp;camera
579
+ April Fools&#8217; project teaches coworkers not to touch your&nbsp;stuff
580
+ 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
581
+ Powering the Oculus Rift with&nbsp;USB
582
+ Upgrading a router with impeccable soldering&nbsp;skills
583
+ Homebuilt Laser Cutter&nbsp;Ideas
584
+ Building a&nbsp;Theremincello
585
+ Microscope ring light with a number of different&nbsp;features
586
+ Hall effect limit switches for a 3D&nbsp;printer
587
+ 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
588
+ MP3/USB/Aux hack hidden behind cassette&nbsp;facade
589
+ Pranking a hackerspace IRC for April Fool&#8217;s&nbsp;Day
590
+ Turning an easter egg hunt into a fox&nbsp;hunt
591
+ Wireless Temperature Control for a&nbsp;Microbrewery
592
+ Melting Metal with a DIY Foundry&nbsp;Furnace
593
+ Top 10 Hacking Failures in movies: part&nbsp;2
594
+ Steampunk theremin&nbsp;goggles
595
+ High speed circuit design for quantum physics light&nbsp;sensing
596
+ 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
597
+ Electric tricycle build log is like hacker&nbsp;crack
598
+ H-bot style 3D printer moves bed for&nbsp;Z-axis
599
+ Stapler hack fastens infinitely large sheets of&nbsp;paper
600
+ 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
601
+ Rolling your own minimal USB to serial Arduino&nbsp;programmer
602
+ Making PLA stick to a 3D printer build platform by using hairspray or an acetone ABS&nbsp;slurry">6</a></td>
603
+ </tr>
604
+ <tr>
605
+ <td><a href="http://hackaday.com/2013/04/07/" title="Acoustic bass guitar uses water jug and two&nbsp;strings
606
+ Solar powered robot mows your lawn while you chill&nbsp;indoors
607
+ 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
608
+ Combo lock uses relays and logic&nbsp;gates
609
+ 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
610
+ The RedBull creation contest&nbsp;begins!
611
+ Recurve bow make from wood and&nbsp;skis
612
+ 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
613
+ MIDI pedal project looks as good as it&nbsp;sounds
614
+ 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
615
+ Guitar EQ levels trigger the stage&nbsp;lights
616
+ Top 10 best hacking scenes in&nbsp;movies
617
+ Automating a mechanical&nbsp;typewriter
618
+ 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
619
+ Horribly complicated electric guitar&nbsp;keyboard
620
+ Generating electricity from&nbsp;alcohol">12</a></td><td><a href="http://hackaday.com/2013/04/13/" title="Network-controlled fireworks&nbsp;launcher
621
+ Working 3D printed stepper&nbsp;motor
622
+ SqueezeBerry: a Raspberri Pi powered Squeezebox&nbsp;appliance">13</a></td>
623
+ </tr>
624
+ <tr>
625
+ <td><a href="http://hackaday.com/2013/04/14/" title="Teaching a computer to play Mario&#8230; seemingly through&nbsp;voodoo
626
+ Building a replacement for a broken dehumidifier&nbsp;controller
627
+ 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
628
+ [FlorianH] shows off MinimaBL, the next generation of his quadcopter&nbsp;project
629
+ 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
630
+ Building a kegerator with visual&nbsp;style
631
+ 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
632
+ Apple MagSafe cord&nbsp;repair
633
+ 3D Printing sensor mounts for the Oculus&nbsp;Rift
634
+ 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
635
+ Semi-automatic pick and place&nbsp;machine
636
+ Living night light with glowing&nbsp;algae
637
+ 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
638
+ Replace your project power supplies with recycled Li-Ion cells and a switching&nbsp;regulator
639
+ 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
640
+ GUI window manager on an AVR&nbsp;chip
641
+ Mood lamp/notifier uses neat modular PCB&nbsp;design">20</a></td>
642
+ </tr>
643
+ <tr>
644
+ <td><a href="http://hackaday.com/2013/04/21/" title="3D printing some sweet&nbsp;music
645
+ Drop-in pcb makes Nintendo Four Score a USB&nbsp;joystick
646
+ 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
647
+ Connect a Retina display to a regular&nbsp;computer
648
+ 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
649
+ What are the best hacking&nbsp;documentaries?
650
+ OTM-02 is a 3D printed&nbsp;wristwatch
651
+ 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>
652
+ </tr>
653
+ <tr>
654
+ <td>28</td><td>29</td><td>30</td>
655
+ <td class="pad" colspan="4">&nbsp;</td>
656
+ </tr>
657
+ </tbody>
658
+ </table></div></div></div>
659
+ <div id=virurl>
660
+ <!-- BEGIN - VIRURL Widget - iFrame Embed Code -->
661
+ <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"
662
+ width="300" height="600" scrolling="no" >
663
+ </iframe>
664
+ <!-- END - VIRURL Widget - iFrame Embed Code -->
665
+ </div>
666
+ <br />
667
+ <br />
668
+ <div id=tl_ad_bottom>
669
+ <script type="text/javascript"><!--
670
+ google_ad_client = "ca-pub-1812638130783065";
671
+ /* Hackaday sidebar wide skyscraper */
672
+ google_ad_slot = "1587378096";
673
+ google_ad_width = 160;
674
+ google_ad_height = 600;
675
+ google_ad_region = "test";
676
+ //-->
677
+ </script>
678
+ <script type="text/javascript"
679
+ src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
680
+ </script>
681
+ </div>
682
+
683
+
684
+ <br />
685
+
686
+
687
+
688
+
689
+
690
+
691
+ </div> </div><!-- end #content-sidebar-wrap -->
692
+ </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 -->
693
+ <script type="text/javascript">
694
+ var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
695
+ document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
696
+ </script>
697
+ <script type="text/javascript">
698
+ var pageTracker = _gat._getTracker("UA-2201445-6");
699
+ pageTracker._trackPageview();
700
+ </script>
701
+ <!-- Start Quantcast tag -->
702
+ <script type="text/javascript">
703
+ _qoptions={
704
+ qacct:"p-cc6zkdHuZwUDM"
705
+ };
706
+ </script>
707
+ <script type="text/javascript"
708
+ src="http://edge.quantserve.com/quant.js"></script>
709
+ <noscript>
710
+ <img src="http://pixel.quantserve.com/pixel/p-cc6zkdHuZwUDM.gif"
711
+ style="display: none;" border="0" height="1" width="1"
712
+ alt="Quantcast"/>
713
+ </noscript></div><!-- end #wrap -->
714
+
715
+ <script type="text/javascript">
716
+ var _qevents = _qevents || [], wpcomQuantcastData = {"qacct":"p-18-mFEk4J448M","labels":",language.en,type.wpcom,vip.hackadaycom"};
717
+ function wpcomQuantcastPixel( labels, options ) {
718
+ var i, defaults = wpcomQuantcastData, data = { event: 'ajax' };
719
+
720
+ labels = labels || '';
721
+ options = options || {};
722
+
723
+ if ( typeof labels != 'string' )
724
+ options = labels;
725
+
726
+ for ( i in defaults ) {
727
+ data[i] = defaults[i];
728
+ }
729
+
730
+ for ( i in options ) {
731
+ data[i] = options[i];
732
+ }
733
+
734
+ if ( data.labels ) {
735
+ data.labels += ',' + labels;
736
+ } else {
737
+ data.labels = labels;
738
+ }
739
+
740
+ _qevents.push( data );
741
+ };
742
+ (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); })();
743
+ _qevents.push( wpcomQuantcastData );
744
+ </script>
745
+ <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>
746
+
747
+
748
+ <!-- /// LOAD CHARTBEAT /// -->
749
+ <script type="text/javascript">
750
+ var _sf_async_config={};
751
+ _sf_async_config.uid = 2021;
752
+ _sf_async_config.useCanonical = true;
753
+
754
+ (function(){
755
+ function loadChartbeat() {
756
+ window._sf_endpt=(new Date()).getTime();
757
+ var e = document.createElement('script');
758
+ e.setAttribute('language', 'javascript');
759
+ e.setAttribute('type', 'text/javascript');
760
+ e.setAttribute('src',
761
+ (("https:" == document.location.protocol) ? "https://s3.amazonaws.com/" : "http://") +
762
+ "static.chartbeat.com/js/chartbeat.js");
763
+ document.body.appendChild(e);
764
+ }
765
+ var oldonload = window.onload;
766
+ window.onload = (typeof window.onload != 'function') ?
767
+ loadChartbeat : function() { oldonload(); loadChartbeat(); };
768
+ })();
769
+ </script>
770
+ <div style="display:none">
771
+ </div>
772
+ <script type='text/javascript' src='http://s2.wp.com/_static/??-eJylzMsOREAQRuEXMoqgEwvxLC4/qjPVOl3dZh4fO3vrk+/Qz3+m3UW4SFZpxsET/D+3mtEjxQ0CJR8gnIRWOCgrfXm8lcAl0uQRFtbtlR3Cqtegl66smto0xhStPQEw5Dy+'></script>
773
+ <script type="text/javascript">
774
+ // <![CDATA[
775
+ (function() {
776
+ try{
777
+ if ( window.external &&'msIsSiteMode' in window.external) {
778
+ if (window.external.msIsSiteMode()) {
779
+ var jl = document.createElement('script');
780
+ jl.type='text/javascript';
781
+ jl.async=true;
782
+ jl.src='/wp-content/plugins/ie-sitemode/custom-jumplist.php';
783
+ var s = document.getElementsByTagName('script')[0];
784
+ s.parentNode.insertBefore(jl, s);
785
+ }
786
+ }
787
+ }catch(e){}
788
+ })();
789
+ // ]]>
790
+ </script><script src="http://s.stats.wordpress.com/w.js?21" type="text/javascript"></script>
791
+ <script type="text/javascript">
792
+ st_go({'blog':'4779443','v':'wpcom','tz':'-7','user_id':'0','subd':'hackadaycom'});
793
+ 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();}
794
+ ex_go({'crypt':'UE40eW5QN0p8M2Y/RE1BNmNJfGhxNCVxUDExYmtXRThKbHcwXTdELEtdRWl+RXVuUXExbERhanBSSkFmcmN6Qj0vU1ZSWzdWJVR+LmlzYXxrYV1maD1zZnNWSnxtdGZ3XTlGWHB2aEpCMUEyfFR+Rm16LDZyMXlZZVYrVWZGdno1MzVyW3d+NS0wclpfbTd4VW5rMDd+VT9zY0cyeXc1cWJWUGpVZU41QVhiMyZKVj18ZFtyek5KWTJ0SldVRltULEpmVC15aTA1a0V0ZngyaUNmdXxoeVVZamo/UStlJXV4cEdJK1JHbjguNU9EOGh5UE56a2tuMVprcSV4ancxNSs1d3N8SXk='});
795
+ addLoadEvent(function(){linktracker_init('4779443',0);});
796
+ </script>
797
+ <noscript><img src="http://stats.wordpress.com/b.gif?v=noscript" style="height:0px;width:0px;overflow:hidden" alt="" /></noscript>
798
+ <script type="text/javascript">
799
+ // Trigger Quantcast pixel for each Infinite Scroll post load
800
+ if ( 'function' === typeof( jQuery ) ) {
801
+ jQuery( document.body ).on( 'post-load', function() {
802
+ if ( 'function' === typeof( wpcomQuantcastPixel ) )
803
+ wpcomQuantcastPixel();
804
+ } );
805
+ }
806
+ </script>
807
+ </body>
808
+ </html>