Front-end web frameworks and other neat web stuff as of mid 2013

No comments:
There's been an explosion in front-end web frameworks over the last two years or so. It's exciting, but it's hard to keep up, and I'm really not trying to since I'm doing lots of cool server stuff these days. I'm just going to mention a couple of them that pique my interest, mainly so that if I come back to this I won't forget!

  • Meteor. This is both a front and a back end system. It has a very cool reactive programming paradigm that runs all the way back to the data, and a killer package manager built in. It is built on Node and Mongo, and I have high hopes for it.
  • AngularJS. HN linked to a great rundown on SO on how Angular differs from jQuery. Angular also uses reactive paradigm that allows the programmer to extend HTML for their application. Powerful stuff.
  • Ractive. This is very, very new but it looks quite good. The concepts are Angular-like but the code looks better, and the excellent tutorials show that the author really pays attention to detail.
It's a visualization library, but D3 (probably better called D3.js or D3js so as not to be confused with Diablo 3, etc) deserves a mention. I'm particularly fond of this very well done D3js tutorial site. D3 is a bit of an odd duck because it really doesn't really do much on it's own; however it's creator, Mike Bostock, seems to be very productive with it and he creates some amazing visualizations with it. I'm still excited about it, since I started with Prefuse and then Flare and now D3 is the latest incarnation in that line of visualization tools.

On the size/performance/page size area, I recently ran across zepto and pure css. Zepto is a jQuery replacement that basically sacrifices browser compatibility for size. It weighs 5-10k vs jQuery's 50k. Pure is a pretty CSS framework that weighs in at a svelt 4.3KB - and I think it has 90% of the functionality I want from projects like Bootstrap. Having state-of-the-art JS and CSS support in a page under 10k makes me happy.

And now for something completely different: RethinkDB. This project strikes me as the Meteor of NoSQL DBs. Rethink is what Mongo should have been. The docs are extremely well-written, the team seems solid and directed, and I wouldn't be surprised if Rethink displaces Mongo as king of the NoSQL. 

Creating an iPhone Ringtone from a Youtube Video

No comments:
XKCD makes an excellent point:

The question becomes: how do I get a ringtone like this? First, find a good source. YouTube has a good source for mosquito sounds, although SoundCloud might be a better option, YouTube has a much wider selection.

Now the question becomes: how to get that sound on my phone as a ringtone. There are many ways to do it. The cleanest way is to install an audio router, such as sunflower (for OSX). However, this isn't something I'll want to do all the time, and the sound quality doesn't really matter that much to me, so I decided to do the simple thing and record computer speaker output with the Voice Memo app on the iPhone. Here's how it worked:

  1. Record the audio with your iPhone Voice Memo app.
  2. Sync to iTunes
  3. Use GarageBand (which is system software) to import the audio file, set the loop, and modify. Instructions on how to do this are available inside GarageBand help - Select Help from the menu and then search for "ringtone".
  4. In iTunes, select your iPhone and then select "Tones" from the psuedo-tabs. If you're like me, you never click on this and it's easy to miss.
  5. Click the "Sync Tones" box.
  6. Select your tone.
  7. Hit the "Apply" Button
  8. In your iPhone, go to Settings|Sounds and select your ringtone!
  9. Profit!
Personally, I think it would be stellar for Apple to add the ability to add a "Use Voice Memo as a ringtone" function right on the phone, without having to go through all of these steps. You could put it in the "Share" menu. Are you listening, Apple? :)

The Magic Command Line that will Force Juniper VPN to Reinstall on OSX

No comments:
So, if you just delete Network in OSX, this won't do the trick. You need something more, a magical command line that will make everything ok. What is this command line?

      sudo rm -rf /usr/local/juniper

And then, you're golden.