De-evolution

Posted by Double Compile on Monday, August 10. 2015 in GNU/Linux

Ubuntu 14.04? Are you plagued by these processes?

doublec+  1912  0.0  0.5 480936 16784 ?        Sl   13:01   0:00          _ /usr/lib/evolution/evolution-source-registry
doublec+  1938  0.0  1.6 1073612 49500 ?       Sl   13:01   0:00          _ /usr/lib/evolution/evolution-calendar-factory

What? evolution-source-registry? evolution-calendar-factory?

Me, I don't use Evolution. I use Thunderbird. And I don't use Gnome Contacts. I use the address book in Thunderbird.

Fortunately, there's a pretty simple way to get rid of these processes.

$ sudo aptitude remove libfolks-eds25 gnome-contacts evolution-data-server

Be sure to kill the processes yourself once the packages have been removed.

1 Comment More...
Defined tags for this entry: , , ,

Country Codes

Posted by Double Compile on Thursday, August 6. 2015 in PHP

Just to bump the visibility, I added two GitHub gists that you might find useful.

Cheers!

2 Comments More...
Defined tags for this entry:

Webcomic URLs Done Right

Posted by Double Compile on Friday, February 1. 2013

I noticed a little annoyance today about webcomics. Allow me to present the story of Alice and Bob.

Alice reads today's strip from a funny and clever webcomic. She is delighted at its content and thinks her boyfriend Bob would appreciate the strip in a similar fashion. The comic she's reading shows up on the front page of the comic's website (e.g. comic.example.com). She copies the URL in her browser address bar and pastes it in a tweet, e-mail, or Google+ message directed at her sweetheart Bob.

Bob doesn't get around to opening the link until the next day, at which time, a new, different comic has appeared on the homepage. He is confused by why Alice would think he would enjoy the current day's comic. In fact, we the audience knows she had meant for him to read the previous day's. The current day's comic offends him so much that they have a falling out and their relationship crumbles. Bob meets Carol at a local singles' bar and has a heated night of passion and intravenous drug usage which ends in his death from massive overdose.

Bob's failed relationship and death could have been avoided if the webcomic in question issued to Alice's browser a "302 Temporary Redirect" sending her from comic.example.com to the permanent link for that day's comic (e.g. comic.example.com/2013-02-01). The URL she copied would always send Bob to the exact comic she read, no matter the day on which he opened it. The 302 is important because the new location changes whenever a new comic became available.

Webcomic authors: do this! Think of Bob.

…also, if Alice wasn't such an inconsiderate little bitch, she might have taken the time to share the comic's permalink.

3 Comments More...
Defined tags for this entry: , ,

Desktop Apps Be Damned

Posted by Double Compile on Monday, June 6. 2011 in Java

As a side project, a couple of friends and I for a long time have been working on the Elysium role-playing game. I had an idea yesterday for a character generator and campaign builder. I remember from years past when I used to play Dungeons and Dragons that there was a free software character generator called PCGen. I took a look at it to see how easily I could develop plug-ins or data sets that applied to our game system. I didn't get a warm fuzzy about this looking at the PCGen docs.

Jonathan Hawk's Rule of Programming #0 states that you will try to extend or reuse something, but find out it sucks and end up doing it yourself anyway. I'm not saying that PCGen sucks by any stretch, but I don't think our non-d20 game system will be easily implementable there. Time to roll our own.

I toyed with the idea of implementing it using Eclipse RCP, even going so far as to downloading the RCP environment and doing a tutorial. I was pretty impressed how easy it was to get a simple app going with Eclipse RCP. It was at this point that a few sudden realizations hit me.

  1. I hate Java. I do it all day at work and with each keystroke, a little bit of my soul is stolen.
  2. I run Linux. If we wanted to distribute this cross-platform, I would have to do some leg work to get it built on Windows and Mac OS X machines.
  3. I gave thought to recent trends in computing of late: mobile and distributed applications. Nothing new and exciting is happening with native desktop programs anymore.

I decided to abandon the idea that this application needs to be locally-installed on a person's computer, instead realizing that with HTML 5, I can create an app that runs across different devices (including phones and tablets) and would allow people to store their created characters and game information both locally on their device and remotely.

To the ☁! Desktop Apps Be Damned!

2 Comments More...
Defined tags for this entry: , ,

Thinking Beyond

Posted by Double Compile on Wednesday, February 9. 2011 in Hardware

On June 5, 2009 — the day before the Palm Pre released, I decided that I would pick one up on a whim, having read the news and hype about it in the preceding months. I got up early that Saturday and was at my local Sprint store by 6:30am, being one of the first 10 in line.

I put the Palm Pre in my hands and never looked back. I was floored by its looks, its ease of use, and its multitasking. Later, I was courted by Palm's warm feeling for their developer community. When HP announced their purchase of Palm, I was wary at first, hoping they wouldn't bury this phone platform I came to love. (I'm not a fanboy, I'm an enthusiast!)

After watching the coverage of the Think Beyond event today, I can safely say that HP gave me the warm fuzzies thanks to all we've been waiting for: new hardware!

  • Pre3 – What I'm doing with my summer vacation. 1.4 GHz. 3.5″ 480×800 WVGA. 512MB RAM. 802.11a/b/g/n. Autofocus 5MP HP 720p Camera. Front-facing VGA Camera.
  • Veer – This thing is adorable. 800MHz. 2.5″ 320×400. 5MP Camera. I think this is their answer to the Kin.
  • TouchPadDaddy Like. Dual Core Snapdragon 1.2GHz. 9.7″ 1024×768 XGA. 1GB RAM. 802.11b/g/n. 1.3MP Front-facing Camera.

The Touch to Share concept and SMS/call forwarding from the Pre3 to the TouchPad look absolutely sick.

The phone's availability is "this summer". I can only hope that Sprint decides to get off its ass and carry more webOS hardware.

The event ended with an enigmatic reference to HP's plans to bring webOS to the Personal Computer. How exactly will that work?

0 Comments More...
Defined tags for this entry: , , , ,

Number of the beast

Posted by Double Compile on Thursday, January 6. 2011 in PHP

As it turns out, the Number of the Beast isn't 666.

… it's 2.2250738585072011e-308

1 Comment More...
Defined tags for this entry: , ,

Extreme malcontent

Posted by Double Compile on Wednesday, December 22. 2010 in Databases

SQLSTATE[HY000]: General error: 1007 Unicode data in a Unicode-only collation or ntext data cannot be sent to clients using DB-Library (such as ISQL) or ODBC version 3.7 or earlier.

I hate you so much, Microsoft SQL Server.

0 Comments More...
Defined tags for this entry: , , ,

SharePoint sucks like a bad relationship

Posted by Double Compile on Tuesday, October 12. 2010

Much of this clever metaphor came from a lunch conversation I had with two gentlemen at OSCON this year.

The only people I have heard saying good things about SharePoint are the ones who are about to install it.

Your guy pals have all heard about this exciting and fun girl, Sharon Point, from one of her friends. They decide to fix you up with her.

You do what any responsible person would do in a new relationship. You Google her. On your first date, you discover she seems like a nice, talented, and well-organized lady. She's apparently pretty popular! Your guy pals congratulate themselves for finding you such a great girl.

This is when the ice weasels come. You find out Sharon Point isn't like other girls.

  • She takes you home to meet her crazy parents.
  • You mysteriously end up being forced to spend more time with her friends, and not yours. You liked your friends just fine, but she says your friends make her feel uncomfortable.
  • When you started dating, you knew she was fluent in French, so you learned French. After all that, it seems she speaks an obscure dialect of French and you often spend hours trying to say the right thing. Most of the time she is just mad at you and refuses to do what you think you've asked. Sometimes you find there just isn't a word in her dialect for what you're asking.
  • She's stubborn and hates diverting from her routine. As long as your guy pals don't want her do anything out of her comfort zone, she is more or less alright to be around, but she refuses to behave a little differently if asked.
  • You heard that she had a ton of skills. Seemingly, she's pretty mediocre at most of them. You could have met a girl who was better at blogging, or one who knew her way around a wiki.
  • Her grammar is horrible. At first you didn't notice, but now you're embarrassed to take her out in public.

In a fit of desperation, you get in contact with one of her old boyfriends for any wisdom he can offer. When you meet, you find him a drained husk of a man, shivering and muttering to himself. He insists your relationship will never work. You should run for the hills.

If only your guy pals knew what horror she can be. They seem to have a good time with her, but when the two of you are alone, she's a vile demoness, confusing and frustrating you to no end. At this point, you probably start dreaming about dumping her.

Fortunately, I'm neither a SharePoint developer nor an administrator. At times, I'm a begrudging user. Hopefully this brought a smile to your face, you poor, poor SharePoint person.

3 Comments More...
Defined tags for this entry: , ,

Musopen aims to free classical music

Posted by Double Compile on Monday, September 13. 2010

While the sheet music for many classical music pieces are in the public domain, recordings of these pieces are not. Enter Musopen: a nonprofit charity that hosts an online repository of public domain classical music recordings. Content authors ranging from indie filmmakers to the Mythbusters production staff have utilized Musopen's collection.

Just recently the founder of Musopen, Aaron Dunn, has started an initiative to raise funding to record a bunch of music and release it under the CC0 license.

We want your help to hire an internationally renowned orchestra to record and release the rights to: the Beethoven, Brahms, Sibelius, and Tchaikovsky symphonies. We have price quotes from several orchestras and are ready to hire one, pending the funds.

With coverage on Slashdot and Ars Technica, the project has received a lot of attention and smashed through the goal of $10,000 (at the time of writing, they've raised over $40,000).

Being a huge proponent of liberated content, I actually donated $75 to the project, and I think the rewards are notably worth it. Not only will everyone benefit from the unencumbered music, but I personally get the following:

  • Early access to the music online before it's released publicly
  • A master copy of the CD before it's released to the public
  • The entire Musopen library on DVD (lossless quality)
  • A Musopen Pro account for 1 year
  • A Musopen t-shirt
With 29 hours to go, it will be interesting to see how much the project ends up raising. Think about donating or spreading the word!
0 Comments More...
Defined tags for this entry: , , ,

Microsoft wants feedback on Azure? Tell them to Open Source it.

Posted by Double Compile on Monday, August 30. 2010 in Open Source

One gentlemen whose talks I always enjoy watching is Simon Wardley, a noted cloud personality and all around knowledgeable guy. He posted a message on Twitter earlier today about a suggestion he added to Microsoft's Azure feedback site.

Here's the blurb at the top of the Azure site:

Hi I’m Mike Wickstrand, Senior Director of Product Planning for Windows Azure. If you have something you need from Windows Azure, please tell us what it is and vote for other's[sic] ideas. I put a few things on the list just to get you started, but feel free to add your own! We want to better understand what you need from Windows Azure and to build plans around how we make the things that "bubble to the top" a reality for our customers in the future.

The release of OpenStack really backs up the call for truly open cloud platforms. Here's our chance to tell Microsoft exactly what we want: Azure to be Open Source software. Let's tell them to get their head out of the clouds.

0 Comments More...
Defined tags for this entry: , , ,

Spring + Hibernate Search 3.1.0 = ArrayStoreException

Posted by Double Compile on Tuesday, January 19. 2010 in Java

I'm using Spring Framework version 3.0.0 (although, I'll bet the same problem would happen with 2.x). I'm using Hibernate Search 3.1.0 (That's what's in Maven. I wonder why there's no 3.1.1).

Trying to use the configuration as follows inside of a Spring configuration document.

<property name="eventListeners">
<map>
<entry key="post-update" value-ref="fullTextEventListener" />
<entry key="post-delete" value-ref="fullTextEventListener" />
<entry key="post-insert" value-ref="fullTextEventListener" />
<entry key="flush">
<list>
<bean class="org.hibernate.event.def.DefaultFlushEventListener" />
<ref local="fullTextEventListener" />
</list>
</entry>
</map>
</property>

Upon running some unit tests, I get a nasty Exception stack, with the following at the root.

Caused by: java.lang.ArrayStoreException
	at java.lang.System.arraycopy(Native Method)
	at java.util.ArrayList.toArray(ArrayList.java:306)
	at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:759)
	at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1460)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1398)
	... 57 more

The root cause of the problem (and I needed to debug the Spring/Hibernate internals to figure this out) is that FullTextIndexEventListener does not implement the FlushEventListener interface in version 3.1.0, but it does in 3.1.1.

Solution: upgrade (if you're using Maven, try the JBoss repository which has the latest stuff) or omit the "flush" event from the configuration.

1 Comment More...

ColdFusion is Painful. Stop Using It.

Posted by Double Compile on Tuesday, November 17. 2009

I'm a software engineer with 10 years (at the time of writing) under my belt, and my speciality is web-based applications. I have used a number of platforms to author applications of all sizes. I am an expert in PHP. I am advanced Java EE developer (and Groovy). I have used ASP.Net. I have also used ColdFusion. (To a lesser extent, I have used Perl and Python, but only once each and it's been years). I am comfortable saying I have enough experience with those platforms to give ups and downs.

The purpose of this article is to lay out the downs of ColdFusion, for in my opinion, it has few ups. To quote a comment in this blog post, "Coldfusion indeed sucks major spidermonkey testicles." This post is not a reasonless rant; I have many reasons listed below that ColdFusion should be avoided and they're pretty good. This is not another "ColdFusion is a dead language" post. Far from it, I know ColdFusion is still alive and kicking, and that is a sad truth.

Continue reading "ColdFusion is Painful. Stop Using It."

26 Comments More...
Defined tags for this entry: , , , ,

GRUB error 24 in Ubuntu Karmic and the fix

Posted by Double Compile on Thursday, November 12. 2009 in GNU/Linux

I applied a bunch of updates to my installation of Ubuntu 9.10 Karmic Koala this morning. Let it be known that I upgraded to Karmic from a clean install of Jaunty, and my root partition was once an ext3 file system turned into ext4. I returned from taking a shower to find the system had completely locked up, so I rebooted. Anyway, I got just past GRUB and received the following error:

24 : Attempt to access block outside partition
hamster hard drive

As it turns out, the GRUB Manual gives the following as a possible reason.

"This error is returned if a linear block address is outside of the disk partition. This generally happens because of a corrupt filesystem on the disk

So I inserted the Live CD and ran fsck.ext4 -f on the device in question, and no errors were found. Peculiar.

Some Google searching turned up this Launchpad issue, which in turn pointed me to a blog post called "Grub voodoo error no 13/24 and how do i fixed it" for a possible fix.

Allow me to quote from that post (thanks so much, Marius) the correct procedure to fix this beast in case anyone else runs into this little problem. Fill in /dev/sda with the correct device name for your disk containing the root partition.

$ sudo su
$ mount /dev/sda1 /mnt
$ mount --bind /dev /mnt/dev
$ mount --bind /dev/pts /mnt/dev/pts
$ mount --bind /dev/shm /mnt/dev/shm
$ mount -t proc none /mnt/proc
$ mount -t sysfs none /mnt/sys
$ grub-install /dev/sda --root-directory=/ --recheck

I rebooted and everything was fine; crisis averted.

3 Comments More...
Defined tags for this entry: , , , , ,

So long, Geocities!

Posted by Double Compile on Monday, October 26. 2009

Well, GeoCities, you had a very long run. A small part of me is sad to see you go. Another part of me is getting intoxicated in celebration.

GeoCities can be explained as a writhing and shrieking cesspool of tag soup within which, once one managed to dredge through the utterly purposeless, gaudy, and pulsing adornments, one could find minuscule amounts of useful information.

I remember your competitors way back when: Tripod, Angelfire, and even Crosswinds. You made it easy for the first generation of Web neophytes to express themselves in a hideous and grotesque manner as illustrated by Bruce Lawson (coincidentally, in reference to the intoxication comment above, I met Bruce at OSCON and exchanged pleasantries over alcohol).

So here's to you o harbinger of pedestrian drivel! Don't let the door hit you on the animated .gif ass on your way out.
0 Comments More...
Defined tags for this entry: , ,

The VARCHAR controversy

Posted by Double Compile on Tuesday, September 1. 2009 in Databases

Today's exchange originated from a short-lived discussion on Twitter.  Everyone familiar with the acronym VARCHAR? It's short for variable character, which is a SQL data type.

Since it's short for variable character, one would think the correct pronunciation is /ˈvær.ˈkʰæɹ/.  (For those of you who don't read IPA, that's var—rhymes with bare—and char—also rhymes with bare).

It drives me up a wall when I hear someone pronounce it like it rhymes with "Far Car", or worse still, soften the "Ch" like in Charbroiled.

Anyway, these are my favorite tweets in regards to the matter:

  • @RealBigDannyT: VARCHAR STARE!!!
  • @rizza: I, too, char varry much about how people pronounce this.

Now, don't even get me started on how you should pronounce "SQL".

5 Comments More...
Defined tags for this entry: , , ,

Page 1 of 3, totaling 40 entries

Quicksearch

Search for an entry in /dev/weblog:

Did not find what you were looking for? Post a comment for an entry or contact us via email!

cronjob