I got love for the blogosphere

This is the first time I’ve updated this site in a while. In some respects, despite the fact that blogging as a technology is old (in web years), I think it’s a superior medium for self-expression relative to other popular mediums because of the amount of flexibility you’re afforded and the fact that you actually own your content. In practice, though, when I feel like putting some thoughts out there the ease of which I can do it — and the guarantee of instant feedback — makes dropping something on Facebook or Twitter (usually Facebook) the clear winner.

At the end of the day, though, it’s laziness. Sometimes the extra effort to crank something out that is “blogworthy” is just too much effort for the instant gratification I think I want.

I work out of the home, and it’s days like this that I realize… I really should get more sunlight. Today it has been really nice out — and thankfully we’ve had the opportunity to get out of the apartment for a little bit and soak it up. Being new to the bay area I’m really looking forward to seeing what some of the other seasons are like. But with respect to why I think I need more sunlight… studies are coming out all of the time showing that not only getting enough light but getting it at the right time of day is really important for health (as well as learning & memory). If that topic piques your interest I suggest you check out this Nature Podcast: http://www.nature.com/nature/podcast/index-2012-11-15.html.

Actually, check out all of the podcasts available from Nature… they’re really, really good if you’re interested in that sort of thing. In particular, I’m a fan of their NeuroPod podcast.

In addition to light exposures effects on learning, memory & mood… lack of light exposure may also be related to the development of myopia: http://www.cnn.com/2011/HEALTH/06/01/myopia.causes/index.html. Not good! On the bright (heh) of things it’s recently come to my attention that Lasik is really not THAT expensive.

Checking out the Sutro Baths

Sutro Baths

High-wage skills on oDesk

Grabbed this from Hacker News:

oDesk recently introduced a controlled, centralized vocabulary of about 1,400 skills for buyers and contractors to use when posting jobs and creating profiles. The primary motivation for the change was to make it easier for buyers and sellers to find each other: without a standardized vocabulary, would-be traders can fail to match simply because they use different terms for the same skill.

A side effect of this transition is that high quality data on the relationships between skills and wages are now available. (more…)

Grab URLs from a String in PHP

Found this little Regex pattern which is an improved version of Daring Fireball’s (found here). Throw whatever string of various mixed up URLs you can at it, and this will return an array of them.

[code lang="php"]
$regexp = '/\b((?:[a-z][\w-]+:(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:(?:[^\s()<>.]+[.]?)+|\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\))+(?:\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:\'".,<>?«»“”‘’]))/i';

preg_match_all($regexp, $message, $matches);

return $matches[0];
[/code]

Traffic Pollution and Risk of Diabetes

Of all the myriad variables that increase one’s risk for developing type 2 (adult onset) diabetes — smoking, being overweight, having a larger waistline — air pollution is not one we usually think of. But newer studies are suggesting environmental risk factors for diabetes: A new one finds that living in an area with more traffic pollution could increase one’s risk, particularly in people who are healthier to begin with. [...]

The link was “borderline significant,” according to the researchers. It was, however, stronger for people who were in better overall health, and for women. For example, in non-smokers who lived in high pollution areas, the risk for diabetes rose to 12 percent. A 10 percent increase in risk was found for physically active people. (via.)

Asus PCE-N13 Wireless Card Ubuntu Linux 11.04 Instructions

I needed to buy a Wireless card for my desktop computer, and unfortunately… much to my dismay… despite there being *very* large lists out there on cards that more or less work with my version of linux (Ubuntu Natty Narwhal 11.04), there really wasn’t a list of *detailed reviews* as to indicate how well any given card works with linux.

Seems like an opportunity waiting to happen for someone that wants to put together a review site and curate what’s already kind of somewhat out there.

I went ahead and grabbed the asus CPE-N13. It was cheap, a brand name I recognized, and Wireless N (multiple antennas!).

Much to my dismay, the card did *not* work right out of the box. First, I had to blacklist some default but immature drivers that comes with ubuntu 11.04:

# Add these to /etc/modprobe.d/blacklist.conf

blacklist rt2800pci
blacklist rt2800usb
blacklist rt2x00lib
blacklist rt2x00pci
blacklist rt2x00usb

Pulled out the patch cable, rebooted for good measure… and voila we have wireless. :)

Dude Posts About Selling WordPress Plugins

Saw this post on Reddit entitled Anyone on r/WordPress interested in buying a Premium Plugin business?:

Throwaway account here for discretion.

I’m exploring selling the rights to one of my premium plugins, and thought r/wordpress would be a good place to gauge interest and possibly find a buyer in my favoritest of favorite communities. Also, because of the nature of the business, it really needs to be taken on by someone who is already proficient at WordPress development.

This plugin was launched in August of 2010, and since then has generated approximately $44,000 in sales, with around $36,000 profit remaining after paying affiliate commissions.

When it first launched, I was actively promoting the plugin and sales were steady around $3,000 – $5,000 per month. However, my attention got pulled into other projects and with only minimal marketing and updates, sales have been stable at around $1,500 per month for most of this year. I spend an average of 1-3 hours per week handling tech support and email inquiries…not too shabby.

I’m selling because I have too many other items on my plate to be able to give the plugin the attention it needs, both in general improvements to the codebase and in marketing.

What’s included:

  • All rights to the plugin itself. It is currently released under a split GPL/Proprietary License
  • The Domain & Sales Website
  • The vBulletin-powered Support Forum & vBulletin License
  • The E-Junkie account to manage transactions & affiliates ( 250 registered affiliates )
  • My availability & assistance during the transitional period.

Asking Price: $25,000 USD

If you have any questions, either about the sale of this business or general questions about how to earn a living selling premium plugins, please post them here. I will do my best to answer without publicly revealing the plugin or any other potentially sensitive information.

If you’re a genuinely interested potential buyer, please PM me so we can further discuss.

Thanks!

Well, he posted it on a public, popular site so how discrete is that?  Since there are 60 million WordPress blogs out there, some 30 of which are self-hosted (or something like that) it’s quite possible.

Maybe I should find a way to offer some cool functionality with upgrade of either PMID Citation Plus or Facebook Simple Like.

I should go through my list of top WordPress plugins and see how many of them offer pay upgrades.

Overriding Form Theme of a Collection (Symfony2)

This code was floating around in a pastebin, and was linked to me from IRC. I’m not sure who originally wrote it, but it’s useful and I wanted to make sure it gets saved so that it can eventually be the basis of a Symfony2 cookbook article.

[code lang="php"]{% block collection_widget %}
{% spaceless %}
<div class="collection">
{% if prototype is defined %}
{% set attr = attr|merge({'data-prototype': block('collection_item_widget') }) %}
{% endif %}
<div {{ block('widget_container_attributes') }}>
{{ form_errors(form) }}
<ul>
{% for rows in form %}
<li>
{% set fieldNum = 1 %}
{% for row in rows %}
<div class="field{{ fieldNum }}">
{{ form_label(row) }}
{{ form_widget(row, { 'attr': { 'class': 'test' }}) }}
</div>
{% set fieldNum = fieldNum + 1 %}
{% endfor %}
<a class="remove" title="Remove" href="javascript:void()">
<span>Delete</span>
</a>
<div class="clear"></div>
</li>
{% endfor %}
</ul>
{{ form_rest(form) }}
</div>
<div class="clear"></div>
<a class="add" title="Add" href="javascript:void()">
<div style="display: none;"></div>
<span>Add</span>
</a>
</div>
<div class="clear"></div>
{% endspaceless %}
{% endblock collection_widget %}

{% block collection_item_widget %}
{% spaceless %}
<li>
{% set fieldNum = 1 %}
{% for row in prototype %}
<div class="field{{ fieldNum }}">
{{ form_label(row) }}
{{ form_widget(row, { 'attr': { 'class': 'test' }}) }}
</div>
{% set fieldNum = fieldNum + 1 %}
{% endfor %}
<a class="remove" title="Remove" href="javascript:void()">
<span>Delete</span>
</a>
<div class="clear"></div>
</li>
{% endspaceless %}
{% endblock collection_item_widget %}[/code]

Also, here’s a github gist link to the same code.