You don't exist.
Well, I guess you do, the individual you. Tautologically (and forgoing solipsism) you must.
But the collective you - the "audience" - you're essentially not there.
There's a few reasons for this, chief among them my unwillingness to promote my site in any way. I'm not talking about buying ads or anything silly, simply about "networking" - harassing people I know and harassing them to harass others and tweeting and Facebooking and doing whatever else it takes to grab eyeballs.
Also, it's relatively clear from perusing my entries that, to put it one way, "my heart isn't in it." I find these topics interesting of course, and I'd like to think that my writing is actually not bad and the links and sources are interesting too. But I'm barely up for updating weekly, much less the daily or more that a truly successful site requires.
So, I'm going to stop. There's the off chance I'll post again if and when I actually post more actual open source projects. But I obviously don't have time to do that constantly, and even in my free time I'm finding other priorities more important. Maybe those too will eventually be things I choose to share with the world, but likely through another venue (or at least a different site).
I was never writing with the intention of building an audience anyway, but it does seem rather silly to continue without one. I'm not going to take anything down, the blog entries will stand if nothing else for my reference, as I truly find the links and such interesting. But now when I find new links rather than write short contrived essays I can just copy the URL in my notes.
Thanks for not reading, and enjoy the silence.
Sunday, April 24, 2011
Sunday, April 17, 2011
"C is the desert island language"
A fun read. It makes the case that C is the "only sane choice" for much development, but that Go is perhaps its "true heir."
Sunday, April 10, 2011
Diversifying your technology portfolio
You probably use a lot of technology.
Computers. Email. Videogames. Search. Blog. Microblog. Social network. Instant messaging. Browser. Cellphone.
The list goes on and on - and in many cases, wide swathes of these products are made by the same company. Microsoft, Google, Apple, Facebook, Nokia, Sony - you can end up largely dependent on a single company for the bulk of your technology "stack."
And it's commonly marketed that this is in fact a good thing - products from the same company are expected to work better with each other, giving you more convenience and less hassle. This can be true, and in some ways I have followed it myself.
But there's a problem with this approach - you're much more sensitive to any changes. It may seem great to be deeply embedded in a particular ecosystem, but if that one company decides to change something in a manner you dislike it can have broader ramifications for you than for a typical user.
Further, it is actually a fallacy that sticking with one corporate "stack" is the ideal path towards interoperability. Any high quality technology, even if it is proprietary, should adhere to openly established standards that have been widely adopted. Good examples of this are email, XMMP, CD/DVD, RSS, and so forth.
So, I just wanted to take a moment to encourage you to diversify your technology portfolio. That is to say, take stock of what you depend on, and consider alternatives that may make you more robust to shifts in corporate strategy.
As intended by my rhetoric, you can think of this as analogous to a good investment strategy. You don't dump all your money in one company, so why dump all your time? It's an investment too, and I would argue a more important one.
I'll close by saying that this is not intended to be a particular criticism or message, but rather a general realization I reached recently that I decided to share. Of the companies I listed above, some arguably make significantly better products than others in most domains (I'll let you decide which is which there). But even if the product is better, there is something to be said for diversification - which I suppose is why I just said it.
PS - For bonus points, include as much open source software as possible in your personal technology "stack." This has the added advantage of transparency, and it's safe to say there is not and almost certainly will never be a single corporate overlord for all OSS. If something happens that people don't like, development will be forked and the process will continue.
PPS - This approach may lead to more accounts/passwords, which is problematic. OpenID is one potential way to mitigate this problem.
Computers. Email. Videogames. Search. Blog. Microblog. Social network. Instant messaging. Browser. Cellphone.
The list goes on and on - and in many cases, wide swathes of these products are made by the same company. Microsoft, Google, Apple, Facebook, Nokia, Sony - you can end up largely dependent on a single company for the bulk of your technology "stack."
And it's commonly marketed that this is in fact a good thing - products from the same company are expected to work better with each other, giving you more convenience and less hassle. This can be true, and in some ways I have followed it myself.
But there's a problem with this approach - you're much more sensitive to any changes. It may seem great to be deeply embedded in a particular ecosystem, but if that one company decides to change something in a manner you dislike it can have broader ramifications for you than for a typical user.
Further, it is actually a fallacy that sticking with one corporate "stack" is the ideal path towards interoperability. Any high quality technology, even if it is proprietary, should adhere to openly established standards that have been widely adopted. Good examples of this are email, XMMP, CD/DVD, RSS, and so forth.
So, I just wanted to take a moment to encourage you to diversify your technology portfolio. That is to say, take stock of what you depend on, and consider alternatives that may make you more robust to shifts in corporate strategy.
As intended by my rhetoric, you can think of this as analogous to a good investment strategy. You don't dump all your money in one company, so why dump all your time? It's an investment too, and I would argue a more important one.
I'll close by saying that this is not intended to be a particular criticism or message, but rather a general realization I reached recently that I decided to share. Of the companies I listed above, some arguably make significantly better products than others in most domains (I'll let you decide which is which there). But even if the product is better, there is something to be said for diversification - which I suppose is why I just said it.
PS - For bonus points, include as much open source software as possible in your personal technology "stack." This has the added advantage of transparency, and it's safe to say there is not and almost certainly will never be a single corporate overlord for all OSS. If something happens that people don't like, development will be forked and the process will continue.
PPS - This approach may lead to more accounts/passwords, which is problematic. OpenID is one potential way to mitigate this problem.
Labels:
internet,
open source,
software
Sunday, April 3, 2011
Music Theory in JavaScript
VexFlow is a pretty cool looking HTML5/JavaScript music notation renderer. And even cooler, you can directly access the underlying music theory API.
Most of my work last week consisted of writing music theory code. VexFlow now has a neat little music theory API, that gives you answers to questions like the following:Definitely a neat piece of software, and the rendering is pretty too (check out the tests page and scroll down to see numerous examples).
- What note is a minor 3rd above a B?
- What are the scale tones of a Gb Harmonic Minor?
- What relation is the C# note to an A Major scale? (Major 3rd)
- What accidentals should be displayed for the perfect 4th note of a G Major scale?
- etc.
The API is part of VexFlow, and can be used independently of the rendering API. Take a look at music.js in the VexFlow GitHub repository for the complete reference. There's also a handy key management library for building scores in keymanager.js.
Labels:
api,
html5,
javascript,
music
Subscribe to:
Posts (Atom)