Skip to content

Commit

Permalink
🔗 Linkrot: 27 fixes (#609)
Browse files Browse the repository at this point in the history
🔗 Linkrot: 27 fixes
  • Loading branch information
icco authored Mar 24, 2024
2 parents 0ccc3f0 + 312d44e commit 1e4d0c5
Show file tree
Hide file tree
Showing 10 changed files with 17 additions and 17 deletions.
4 changes: 2 additions & 2 deletions posts/396.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@ I'm a big proponent of Dark Sky for a few reasons. The first being that [their e

The second is they started as [a Kickstarter campaign](https://web.archive.org/web/20230203093358/http://www.kickstarter.com/projects/jackadam/dark-sky-hyperlocal-weather-prediction-and-visuali). I'm a big supporter of Kickstarters, not entirely sure why, but I back two to three projects a month. I didn't back it at the time, but I love the idea that "1,203 backers pledged $39,376 to help bring this project to life" in 2011, and now it's a largish company helping people stay dry.

The third reason is their dataset's accuracy. I was in SoHo in NYC walking with @jdherg, and he gave me an up to the minute prediction of when it would rain, that was pure magic. How they do it is by [compiling a large number of datasets](https://forecast.io/raw/) and modifying the data to get a better picture of when rain is coming. [Adam Grossman](http://jackadam.net/) wrote a [great technical post back in 2011 about how Dark Sky works](http://blog.jackadam.net/2011/how-dark-sky-works/), also [Kickstarter did a nice interview with him on the high level details](https://www.kickstarter.com/blog/featured-creator-adam-grossman-of-dark-sky).
The third reason is their dataset's accuracy. I was in SoHo in NYC walking with @jdherg, and he gave me an up to the minute prediction of when it would rain, that was pure magic. How they do it is by [compiling a large number of datasets](https://forecast.io/raw/) and modifying the data to get a better picture of when rain is coming. [Adam Grossman](https://jackadam.net/) wrote a [great technical post back in 2011 about how Dark Sky works](https://web.archive.org/web/20160819032256/http://blog.jackadam.net:80/2011/how-dark-sky-works), also [Kickstarter did a nice interview with him on the high level details](https://web.archive.org/web/20200604230410/https://www.kickstarter.com/blog/featured-creator-adam-grossman-of-dark-sky).

Anyways, the hilarious thing is a lot of people use this dataset now. [Product Hunt's Weather App List](https://www.producthunt.com/e/weather-apps) has twenty-two weather applications, and from what I can tell (some apps don't list their weather source) at least eight explicitly list [Forecast.io](https://forecast.io/) (the Dark Sky dataset) as their datasource. Only one explicitly listed another source ([8-Bit Weather](http://8bitweather.co/) lists [Yahoo](https://weather.yahoo.com/)).
Anyways, the hilarious thing is a lot of people use this dataset now. [Product Hunt's Weather App List](https://www.producthunt.com/e/weather-apps) has twenty-two weather applications, and from what I can tell (some apps don't list their weather source) at least eight explicitly list [Forecast.io](https://forecast.io/) (the Dark Sky dataset) as their datasource. Only one explicitly listed another source ([8-Bit Weather](https://web.archive.org/web/20211124135024/http://8bitweather.co/) lists [Yahoo](https://weather.yahoo.com/)).

#weather #applications

2 changes: 1 addition & 1 deletion posts/397.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ This morning, I saw a tweet from [Twilio](https://www.twilio.com/) talking about

My brain instantaneously went "it's a huge version of the thing I want to build!"

The link led me to [an article by the firm that built the thing](http://work.gmunk.com/Twilio-Beacon) with lots of photos and also [an interview and brief description on the twilio blog](https://www.twilio.com/blog/2015/07/building-beacon-how-one-team-built-a-25-foot-interactive-chandelier-at-signal.html). Pretty cool stuff!
The link led me to [an article by the firm that built the thing](https://web.archive.org/web/20150726030900/http://work.gmunk.com:80/Twilio-Beacon) with lots of photos and also [an interview and brief description on the twilio blog](https://www.twilio.com/blog/2015/07/building-beacon-how-one-team-built-a-25-foot-interactive-chandelier-at-signal.html). Pretty cool stuff!

Now I've got to build mine, although it'll be much smaller and simpler...

Expand Down
8 changes: 4 additions & 4 deletions posts/399.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@ What I'm listening to now:

![what](https://s3.amazonaws.com/f.cl.ly/items/3o2p1B3r1N3Z2J0F431x/20150717232141.png)

- [Internet of Things](http://iotpodcast.com/): Haven't listened to yet, was recommended.
- [Science Friday](http://www.sciencefriday.com/): I listen to one or two a month. These are pretty hit or miss.
- [Reconcilable Differences](http://www.relay.fm/rd/): New Merlin Mann. I love his stuff, but I'm not sold on this yet.
- [Internet of Things](https://iotpodcast.com/): Haven't listened to yet, was recommended.
- [Science Friday](https://www.sciencefriday.com/): I listen to one or two a month. These are pretty hit or miss.
- [Reconcilable Differences](https://www.relay.fm/rd/): New Merlin Mann. I love his stuff, but I'm not sold on this yet.
- [What's The Point](http://fivethirtyeight.com/datalab/introducing-fivethirtyeight-newest-podcast-whats-the-point/): I like @fivethirtyeight's writing, and these have been good so far.
- [XLR8R](http://www.xlr8r.com/podcasts/): Great electronic music
- [Roderick on the Line](http://www.merlinmann.com/roderick/): Good, but I can only listen to one or two a week before I get overwhelmed. Highly recommend starting at the beginning, it's just so many inside jokes now. I usually listen to the newest episode and an older episode each week.
Expand All @@ -30,7 +30,7 @@ What I'm listening to now:
- [Coffee & Cider](http://www.esn.fm/coffeecider/): I love these two, but I'm not sold on it yet. It's like a short Roderick.
- [Design Matters](http://www.debbiemillman.com/designmatters/): The best design interviews out there. I think in my three or four years listening I can only remember one bad interview (the episode she interviewed the two guys from Mailchimp).
- [Sufficiently Human](http://sufficientlyhuman.com/): Good, but I think they stopped making them.
- [Song Exploder](http://songexploder.net/): Great discussions on song creation by the artists themselves.
- [Song Exploder](https://songexploder.net/): Great discussions on song creation by the artists themselves.
- [Startup](https://gimletmedia.com/show/startup/): Each season follows a startup.
- [ReplyAll](https://gimletmedia.com/show/reply-all/): Interesting stories from the internet. I really love their Yes, Yes, No segment where they explain internet phenomena.
- [Mystery Show](https://gimletmedia.com/show/mystery-show/): Weird premise, but cool stories about weird mysteries.
Expand Down
2 changes: 1 addition & 1 deletion posts/400.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Battles uses all kinds of crazy loops and stuff to make their music. The [accomp

> I like to get sort of funky with it by re-sampling the sample. You can send one audio loop, say, re-record it onto three tracks, into three clip slots, and then in those three clips slots you can play with the start point. I like to do this thing – and I've made a lot of loops using this technique – it's almost like beat-juggling as a DJ, but you're just doing the speaker on-off trick. So you're bouncing between the three loops – it's the exact same sample on all three tracks – and if the start points are slightly different you can get into some really cool dancing kind of rhythms. - [Ian Williams](https://en.wikipedia.org/wiki/Ian_Williams_(musician))
The [Song Exploder](http://songexploder.net/) episodes for [Anamanaguchi](http://songexploder.net/anamanaguchi), [The Album Leaf](http://songexploder.net/the-album-leaf), [Baths](http://songexploder.net/baths) and [Tycho](http://songexploder.net/tycho) also talk about creating loops in music. All of this is pretty cool. Makes me want to get my act together again and finish building my drum machine.
The [Song Exploder](https://songexploder.net/) episodes for [Anamanaguchi](https://songexploder.net/anamanaguchi), [The Album Leaf](https://songexploder.net/the-album-leaf), [Baths](https://songexploder.net/baths) and [Tycho](https://songexploder.net/tycho) also talk about creating loops in music. All of this is pretty cool. Makes me want to get my act together again and finish building my drum machine.

#music

8 changes: 4 additions & 4 deletions posts/401.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ p fibonacci(6) # => 8

The point here is that this is a function that calls itself to figure out the answer. It keeps calling itself until it gets to what is called "the base case". The base case is the final return statement where the recursive function finally returns something instead of calling itself again. Thus the return statement of a recurser at the Recurse Center is a document which the recurser looks back and [reflects on their progress](https://www.recurse.com/manual#sec-principles) from their time at RC.

In [Pam's Return Statement](http://thewebivore.com/recurse-center-return-statement/), she attributed the name to @gnclmorais. Both of them were in the first batch at RC [after it changed its name from Hacker School](https://www.recurse.com/blog/77-hacker-school-is-now-the-recurse-center). [Gonçalo also wrote a return statement](http://around-nyc-in-86-days.tumblr.com/post/119198084603/return-statement-a-week-after-leaving-im-making) on his time at RC. [Mindy wrote a great retrospective](http://www.somerandomidiot.com/blog/2015/07/20/retrospective/) from when she was at RC, and John has a great post on [what he wish he had answers to before he attended RC](http://dev.jdherg.com/posts/2015/07/20/the-recurse-center-a-qa-for-past-me/).
In [Pam's Return Statement](https://thewebivore.com/recurse-center-return-statement/), she attributed the name to @gnclmorais. Both of them were in the first batch at RC [after it changed its name from Hacker School](https://www.recurse.com/blog/77-hacker-school-is-now-the-recurse-center). [Gonçalo also wrote a return statement](https://around-nyc-in-86-days.tumblr.com/post/119198084603/return-statement-a-week-after-leaving-im-making) on his time at RC. [Mindy wrote a great retrospective](https://web.archive.org/web/20221209015412/https://somerandomidiot.com/blog/2015/07/20/retrospective/) from when she was at RC, and John has a great post on [what he wish he had answers to before he attended RC](https://dev.jdherg.com/posts/2015/07/20/the-recurse-center-a-qa-for-past-me/).

Anyways, enough preamble. On to the meat.

Expand All @@ -39,19 +39,19 @@ The first thing I implemented was a version of [Conway's Game of Life](https://e

My next substantial project was [Hyperspace](http://playhyperspace.com/). Hyperspace was a multiplayer version of [the classic game Asteroids](https://en.wikipedia.org/wiki/Asteroids_%28video_game%29). This project started because of [Ken Pratt](http://kenpratt.net/) and I realizing we had a friend in common, [Seth](http://www.altereddreams.net/).

After we made this realization, we became fast friends, and decided we wanted to build something together. There was lots of back and forth and brainstorming. We both wanted to build something substantial, and we wanted to only work for two weeks. Our plans went all over the place, discussing building a Starcraft clone, some sort of distributed system, something impressive in Rust, something concurrent in Go. We would narrow in on an idea, verbally iterate on it for an hour, and then throw it out. This went on for two days, until we sat down with [Mary Rose Cook](http://maryrosecook.com/). Mary reminded us that scope was important, and that there was this thing called "[Client Side Prediction](https://en.wikipedia.org/wiki/Client-side_prediction)" that was complicated enough to make a real time multiplayer game pretty interesting to build.
After we made this realization, we became fast friends, and decided we wanted to build something together. There was lots of back and forth and brainstorming. We both wanted to build something substantial, and we wanted to only work for two weeks. Our plans went all over the place, discussing building a Starcraft clone, some sort of distributed system, something impressive in Rust, something concurrent in Go. We would narrow in on an idea, verbally iterate on it for an hour, and then throw it out. This went on for two days, until we sat down with [Mary Rose Cook](https://maryrosecook.com/). Mary reminded us that scope was important, and that there was this thing called "[Client Side Prediction](https://en.wikipedia.org/wiki/Client-side_prediction)" that was complicated enough to make a real time multiplayer game pretty interesting to build.

So we sat down and built it. A Javascript frontend, and Go backend. We ran into all sorts of problems. I had hoped to write an article about that, but it's fading from my memory fast. The code is at [kenpratt/hyperspace](https://github.com/kenpratt/hyperspace) and it's running online at [playhyperspace\.com](http://playhyperspace.com/).

One of the best parts of RC, in my opinion, are the check-ins. Check-ins happen every day at 10:30, Monday through Thursday at RC. You get together with six to eight people \(the group changes weekly\), and talk about what you did the previous day, and what you're doing today. My favorite check-in spot was the McCarthy room \(all of the rooms [are named after famous programmers](https://recurse-center.squarespace.com/blog/2015/6/27/days-32-33-34-room-names-at-rc)\). McCarthy is interesting because it actually isn't a room, but rather two couches at 90 degrees from each other, with a tall table you could stand and work at or setup a projector and display things on the wall. I liked it because I could sit down, and the check-ins I had there always seemed super relaxed, and maybe even a little silly, compared to check-ins I had in other spots.

My third project came from a check-in at McCarthy. [Pam Selle](http://thewebivore.com/about/) was talking about this cool idea she had. It had come up a few times when we had talked before, but now her time at RC was nearing the end, and so she asked for help with something \(I don't remember what\), and I said I would help. And thus, I found myself working on [ShhParty](http://shhparty.herokuapp.com/). The code is at [pselle/shhparty](https://github.com/pselle/shhparty). Pam's idea was to build a service where you could create a peer to peer [silent dance party](https://en.wikipedia.org/wiki/Silent_disco) with no server in the middle. Using [peer\.js](http://peerjs.com/) we built a system where a user visits the site, creates a party, and then other users and come and join the party. The server only keeps track of the parties, not who is at which one, nor does the stream from the party creator ever reach the server. After we got the basic functionality working, [Cole](https://twitter.com/fantasticole) came in and redesigned it for us. Overall a great success\!
My third project came from a check-in at McCarthy. [Pam Selle](https://thewebivore.com/about/) was talking about this cool idea she had. It had come up a few times when we had talked before, but now her time at RC was nearing the end, and so she asked for help with something \(I don't remember what\), and I said I would help. And thus, I found myself working on [ShhParty](https://web.archive.org/web/20220216070340/http://shhparty.herokuapp.com/). The code is at [pselle/shhparty](https://github.com/pselle/shhparty). Pam's idea was to build a service where you could create a peer to peer [silent dance party](https://en.wikipedia.org/wiki/Silent_disco) with no server in the middle. Using [peer\.js](http://peerjs.com/) we built a system where a user visits the site, creates a party, and then other users and come and join the party. The server only keeps track of the parties, not who is at which one, nor does the stream from the party creator ever reach the server. After we got the basic functionality working, [Cole](https://twitter.com/fantasticole) came in and redesigned it for us. Overall a great success\!

Week Six ended, and with its end, half of the people I spent every day at RC with left. You see, each batch at RC is thirty-ish people. And every batch overlaps with two other batches for six weeks. So for the first six weeks, my batch \(Spring 2, 2015\) shared the space with "Spring 1, 2015" and then the last six weeks, we shared the space with "Summer 1, 2015". Our batch actually had two weeks off in between batches, because there was an alumni week, and a week of planning for the facilitators. But I used a lot of this time to continue working on stuff.

A few weeks earlier, a call for proposals for the third issue of [Code Words](https://codewords.recurse.com/) went out. Code Words is a quarterly online long form programming magazine. I submitted two article ideas, and one got accepted. This turned into four weeks of writing and tweaking. I got help from people at RC, and also lots of advice on writing blog posts from @staringispolite, @mrmrs\_, @dmpatierno and @alexbaldwin. The final product was [this article on DDOS](https://codewords.recurse.com/issues/three/ddos-and-you). It was pretty well received, and I think it is my favorite piece of writing that I have ever put together. I'm trying to write and speak publicly more in general, so this was a good start.

While I was working on Code Words, another project came into existence. I was talking with @jdherg about a few things, and gifs came up. From our conversation, I decided I wanted to build an online repository of my favorite gifs, so I could use them in chat and life more often. Around this time, I also discovered [Tumblr's new gif search functionality](http://techcrunch.com/2015/06/04/tumblr-debuts-its-own-gif-search-engine/). The problem with Tumblr's gif search is it could only be used for new Tumblr posts. So I started deconstructing the request to Tumblr's backend. I found I could recreate the functionality with somewhat simple [curl](http://curl.haxx.se/) request\. I then built a web frontend to the API called [giftionary](http://www.giftionary.city/). Giftionary is probably the simplest thing I built at RC \(it's under 500 lines of code\), but it was so much fun to build, and brought pure joy to everyone who used it. Tumblr has so much fantastic content, and just being able to surface some of that has made me really happy.
While I was working on Code Words, another project came into existence. I was talking with @jdherg about a few things, and gifs came up. From our conversation, I decided I wanted to build an online repository of my favorite gifs, so I could use them in chat and life more often. Around this time, I also discovered [Tumblr's new gif search functionality](https://techcrunch.com/2015/06/04/tumblr-debuts-its-own-gif-search-engine/). The problem with Tumblr's gif search is it could only be used for new Tumblr posts. So I started deconstructing the request to Tumblr's backend. I found I could recreate the functionality with somewhat simple [curl](http://curl.haxx.se/) request\. I then built a web frontend to the API called [giftionary](http://www.giftionary.city/). Giftionary is probably the simplest thing I built at RC \(it's under 500 lines of code\), but it was so much fun to build, and brought pure joy to everyone who used it. Tumblr has so much fantastic content, and just being able to surface some of that has made me really happy.

On the last week of RC, I sat down with a bunch of people to build an idea @jdherg had been talking about: a Recurser Social Directory. RSD, as it became known, is a website where everyone at RC can share their links to their online identities. This was fun because it caused me to basically live code a website with approximately ten people "mob programming" with me. For most of the time, I would be coding and explaining what every line does, and then stop to explain how something works \(database connections, weird ruby things, how does Sinatra work, CSS, design prototyping, etc\). It was so much fun. After it was done we presented, and then started getting lots of issues and pull requests, which has been awesome. Shout out to @muditameta for lots of cool additions and bug fixes.

Expand Down
Loading

0 comments on commit 1e4d0c5

Please sign in to comment.