January 2012
2 posts
Cinnamon, My New Favorite Linux Desktop
Ah Gnome3, KDE 4.x, Unity… how the GUI desktop landscape has changed over the past year or so for Linux. Honestly, I haven’t been a fan of any of them.
KDE, it’s nice but experience has been it just seems slow. I’m not sure how to explain it, but just basic interaction with desktop has always left me with this feeling of it being sluggish. Once upon a time I was a huge...
Quick Note on tornado.gen and asyncmongo
So for my current project ChatFor.Us I’m using asyncmongo with tornado. I’ve started messing around with tornado.gen to try and get rid of the spaghetti callbacks I was building up. First of all, I love tornado.gen, it’s great stuff.
asyncmongo is a special case, in the it doesn’t return just one item to callbacks. Rather, it returns {response, error=None}, or error can...
November 2011
2 posts
Maybe What We Need Is httpe://
This is a follow up to my last post. Without actually writing any code I figured out a way to possibly pull of the idea in my previous post. It was a little complicated and had room to fail. It also didn’t cover keeping people logged in long term. Basically the whole “Remember me for x days” would be difficult to implement. It wouldn’t be impossible, but was complicated...
Http sessions in an ideal world
First, please excuse any typos or weird formatting. Writing this post on my Android while waiting on my car to be serviced. Been here 4 hours so far, doing this also to kill boredom.
This is a post I have been wanting to do for a while. I have now written 2 sessions libraries. Gaeutilities and asyncmongo sessions. So I feel I have a pretty good grasp of the issues.
With both libraries I...
October 2011
4 posts
Business Still Needs Sysadmins
This is response to this post - I’ll Probably Never Hire Another Pure SysAdmin - and others like it I’ve seen lately.
Now I started out in IT back in the late 90’s, out of highschool. The internet wasn’t like it is now, with the wealth of information and thousands of blogs. We had Slashdot and that’s about it for high profile tech news and discussion sites. These...
My ssh config
One of the key secrets to being a good sysadmin is knowing how to be lazy. I’m one of those guys who will spend an hour writing a script to do something I could have knocked out in 10 minutes. Wait.. that’s not being lazy? It is if I have to perform that task more than 6 times.
My job requires a lot of ssh. My workstation might as well be a thin client. Working from home I use ssh...
I care about cancer; but not node.js
There’s a blog post being passed around various circles right now titled Node.js is Cancer.
The quick summary is the author doesn’t like node.js, thinks it’s bad for IT in general, and comes up with several sort of thought out reasons to back up his stance.
I’m not going to debate the entire blog post. I’m pretty agnostic about node.js, I’ve tried to use it...
I always end up going back to Tornado
I’m playing with 2 different project ideas right now. One it was a given I’d go with Tornado. It’s basically a very similar implementation to what I’m doing with unscatter.com. The other though is a chat server, and I really thought I’d try some other technologies.
I had a few other technologies I want to play with. Google Go, Erlang and Brubeck were topping the...
August 2011
3 posts
Using YUI3 Event To Tame setInterval()
One of the things I do on unscatter.com is update timestamps for /facebook and /twitter results every 60 seconds. I like having the “Just Now” or “5 minutes ago” timestamps, but always want them to be representative of the actual time of the status message. This came from when I had a working Twitter/Facebook/Myspace client built into Unscatter.com. Something that will be...
Document as you go
I have a rsync job running right now that’s going to take a while to complete. It’s bandwidth limited and as I sat staring at the stream of text flying across my terminal I also took stock of what I’m doing.
I’m currently migrating all the apps, content and processes from one server to another. It’s part of a hardware upgrade that also includes going to a new...
My crazy idea for making a better email server
This idea seems so simple, I’d have to believe it’s been tried before. In fact searching (using unscatter.com of course) I found http://www.bigstring.com/ which has the core idea in place already.
The idea being that you send an email, but the recipient gets a link to the email and not the actual email. This allows the sender to go and edit or even delete the email after sending it....
July 2011
2 posts
Twitter spam really is annoying
Simple solution for you Twitter, heck, give me access to the resources where I can tap into the stream and I’ll build it for you.
- Scan tweets as they come in for url.
- If the tweet has a url in it, dump into a db
- Periodically (every 60 minutes) run a report on the db
Report would:
Pull each url from a tweet
Check against cache
Scan it against something like the Google Safe...
National Debt, Weak Economy? Lower The Price of...
Excuse me as I use my personal blog to discuss something that’s not technology oriented like a majority of my posts.
It seems to me that there are 2 big problems in the US right now. We have a weak economy that’s not helping to create new jobs, after several years of a major increase in unemployment. We also have a huge national debt that’s adding fuel to the fire of a weak...
June 2011
2 posts
How and Why I Use Unscatter.com Every Day
OK, yes I built it and by using it it also helps me prioritize what I should work on next for it.
I am really the only customer using it at the moment as well.
However, as a product I do find it useful, and I do use it daily. It’s not immediately obvious why it’s a useful product. I base this opinion on the fact that it really hasn’t caught on. So, I believe I need a better...
Pivots I've Done, Realizations I've Come To
The past couple years I’ve developed a growing interest in building and managing scalable systems. I actually only recently came to the conclusion that this is what’s been going on, but that’s pretty understandable considering I have 2 girls, a 3 year old and 11 month old. I think I’m now slowly coming out of that sleep depravation haze that parents of small children go...
May 2011
5 posts
ZeroMQ Lessons Learned: With pyzmq use ZMQStream
As I work on Scale0, I think it would be a good idea to share lessons I learn. I’ll also probably try to detail some design decisions. In fact, a lot has changed from the initial documentation I wrote, but that’s for another blog post (and doc updates).
To start with, this is based off of ZeroMQ 2.1.7 and pyzmq 2.1.7.
Right now I’m building ZeroMQ using Python, though I...
Unscatter.com the present, and future.
For the past couple months I’ve been using Unscatter.com as my primary search engine. I configured Chrome both at work and home to search it by default. Since I’ve done this, I’ve added quite a few features and fixed more bugs.
For example paging is working reasonably well, though I intend to start caching results so I can always get you back to the results set you were...
Alternative approach to Facebook likes on Bing...
So, I read how Bing is adding Facebook likes to their search results, or rather, fully integrating Facebook likes into the search results, showing if your friends have already liked a url.
I’m really not sure how valuable that would be to me. If the url was that interesting, then I’m sure my friend would have already shared it with me, I should not have needed to search for it in the...
Remembering advice from @zedshaw
I once submitted an Ask HN: on Hacker News looking for negative feedback on zeromq. It was when I was trying to decide on whether to pursue my Scale0 project or not. Once I mentioned my idea, someone suggested I check out Mongrel2.
I agreed that Mongrel2 was a good choice, but I didn’t want to use it because I wanted to create my own for the learning experience. Zed Shaw, the man who wrote...
May 4th updates to unscatter.com
I’ve made a few updates to unscatter.com. New logo, facebook share counts in search results, less buggy paging… More details can be found on the unscatter.com blog.
http://company.unscatter.com/post/5196475329/may-4th-updates
April 2011
4 posts
Better gas mileage car = Putting Scale0 on hold
So, this weekend I traded in my 07 Envoy Denali for a 2010 Mazda5. I’ve gone from about 12mpg to an anticipated 21-24 average. My car payment also went down. However, this means I’ve lost my 20-30 minute block of the day I was putting into Scale0. I have an interesting commute and part of it was spent waiting for my wife at a commuter lot every evening. Now, I can afford to go home and...
The List
After seeing someone else mention an idea from a Startup Weekend, I’ve decided to keep my own list of ideas that I’d like to work on if no one else does them first.
These are ideas that I would personally use, so I’m not really interested in keeping them super secret for a business I’ll turn into Super Mega Corp. and take over the world with. Rather these are ideas that...
0mqproxy
UPDATE: The project is now Scale0 https://github.com/joerussbowman/Scale0
Looks like I am going to take a break from working on the unscatter.com interface for a bit. There’s a couple bugs I’m going to fix, but adding new apis and other features is going to wait a bit.
My new project is going to be something that will eventually support the site though. I’ve been reading...
Is there any reason to be concerned about the...
Yahoo! is going towards a pay model with Boss V2, and it’s going to be powered by Bing. Bing has been the no limit free model (as long as you use our ads) search api for the longest time. Now though, I’m getting a bit concerned about it’s future.
First, I haven’t see a lot of activity in the developer forums, lots of unanswered questions.
Then this specific question...
January 2011
2 posts
Setting up a new mac workstation
This blog post will probably be edited over time. This is based off of my switch to Mac for the first time and will be used to refer to when ever I get a new Mac. Hopefully by switching to Mac I won’t be changing computers very often though. Really expecting this to last years.
# Terminal Setup:
# Finder -> Applications -> Utilities -> Terminal
# With Terminal open it should be...
Lunchtime Links 1/7/2011
Not sure how often I’ll do this, but will try fairly often. Postings like these will be a collection of links I’ve found interesting. May do one in the evening, or every few days, not sure how often. This will also be the last time I ever explain it.
Map showing mass animal deaths world wide. Interesting to me is the US, where a lost seem to fall east and west of the Appalachian...
December 2010
1 post
Gaeutilties is the BMW M6 of Appengine Session...
First, to be honest, this post is the result of personal frustration. I learned python writing gaeutilties, and it’s still my language of choice even if appengine isn’t my choice for application hosting. So I often search for gaeutilities and find people asking for support on different forums and answer them. It seems I am not the only one who performs this search though. Most of the...
November 2010
1 post
Unscatter.com is now officially a hobby.
When I first got the idea of Unscatter.com, it was to be a possible startup. I have ideas of business to business features that I still think will work. Originally it was to be a hosted search solution for businesses websites and social assets such as what they have on Youtube, Facebook, Flickr and Twitter.
I dropped the custom search a while into development, and started building the news...
October 2010
3 posts
Firesheep is an example of why gaeutilties session...
I always caught a lot of flack about how complicated Gaeutilities session is. There are ways to speed it up still, making it a decorator so all data saves really happen at the end of the request for example. However, one of the things slowing it down is it’s security implementation. Basically it creates a new token every x seconds to be stored in the user browser. Generally a token is valid...
YUI3 Global Events Made Easy
If you read the YUI3 Event documentation, at least to me, it looked like global events able to be caught in multiple sandboxes is a difficult thing. There’s documentation about publishers and event targets…
No need, it is as simple as:
Y.Global.fire('globalevents:myevent');
In one sandbox, and in the other(s)
Y.Global.on('globalevents:myevent', function() {...
How the streaming updates on www.unscatter.com...
Late last night an update was pushed to www.unscatter.com that had some pretty big backend changes, and one big UI change. Results from Facebook, Twitter and Youtube now stream near real time for all search queries, bringing you the latest conversation and media about anything you’re searching for.
I built a new engine to handle this, using a Tornado instance with a MongoDB backend. I...
September 2010
2 posts
Angelgate helps me show Unscatter.com's value
Well, I now have a good example of what Unscatter.com provides. I haven’t really been following this whole angelgate thing that I’ve seen mentions of on a few websites and Twitter. So I got curious. Out of pure motor reflex, I went to Google and searched for angelgate.
Here’s there results - A really long Google url that breaks my page layout
Basically, nothing about the...
I think I like contributing to an open source...
I’ve been working on the Tornado framework’s authentication library, and I have to say it’s really nice to submit pull requests, get feedback, and then go back and make changes based on that framework. Working with gaeutilities it’s been more or less me making changes whenever there’s a bug report, but I haven’t really had that other set of eyes perspective to...
August 2010
3 posts
Why Bother With Stealth Mode?
Ok, first I’ll preface this with if you’ve already got investors and a team on board before you start building because you’re a hotshot ace with the “in’s” on angel investors and VC firms, sure it probably makes sense to go stealth mode and make a huge splash.
But what about the rest of us? When I first started working on unscatter.com I was all about stealth....
My Experience at DC Startup Weekend 2010
Wow, what a weekend. First of all I want to say thank you to all the sponsors and the guys who the weekend. Touchstone thanks for hosting us. Luna Grill and Chipotle thanks for feeding us. Jonathon Schuster from Sproutbox and Charles from Affinity Lab were just two amazingly intelligent guys to speak with. Thanks again for letting me crash you table at the bar, I really learned a lot from you...
What I'm working on lately...
Well… Unscatter.com is starting to shape up. Based off the feedback I got, more people were using it as a news source than a search engine. So, it’s moving in that direction. It no longer returns web search results at all, though as I work on the interface I may still make that an option built into the UI.
Currently I’m working on the overall UI. I’m building tabs into...
July 2010
2 posts
Convince me x language isn't horrible
Saw this over on StackOverflow, and it made me laugh. http://stackoverflow.com/questions/309300/defend-php-convince-me-it-isnt-horrible
I’ve seen this same question asked about just every language out there. Like this one it usually has a long list of well thought out complaints about the design of the language. You have to commend the writers of these posts for the time and effort put...
Some thoughts on the MongoDB durability issue
So, if you’re reading this, then you’ve probably already read http://www.mikealrogers.com/2010/07/mongodb-performance-durability/
It was an interesting article, and it did make me think a little, but in then end I’m going to stick with MongoDB. While I do agree that a transaction log approach would be useful, I’m comfortable using it in a production environment until they...
June 2010
5 posts
A little Harmony added to the world
So, June 22nd, 2010 my second daughter was born. At 10 lb 7oz she was actually the smallest baby my wife has ever had, and there’s no gestational diabetes involved, my beautiful wife just has big healthy babies.
This is of course a big time in my life. It’s also hopefully going to be a turning point. After I get through the sleep deprivation phase of a newborn, and get an...
I write python, I couldn't care less about...
Maybe other languages have this as well, I don’t know. I don’t think I’ve ever really been told that I wasn’t doing something the PHP way, the Javascript way, the C way, the Perl way or the Bash shell way. However, I’ve seen references to some of my opensource projects, critical of them for not being 100% pythonic. Recently I saw a post in the Tornado group, saying...
You may want to keep an eye on the blog at...
This blog is going to remain as my personal blog. However, a lot of technical details will also be going into the new blog I’ve set up for unscatter.com, at http://company.unscatter.com which is also a Tumblr blog.
I’m in fact looking at seeing how I can use Tumblr to create a family website soon, and this blog will roll into that. I’ll be sure to blog about that process as...
$10.69, I'm officially in the red for my startup.
I’ve now paid the first bill for http://www.unscatter.com. It’s been up for 1 month and Rackspace has gone ahead and deducted my first months hosting costs.
I think I’ve gotten quite a lot out my $10.69. I haven’t actually registered my business yet, I’m still heeding the advice of build the product, worry about the business later. My product has improved...
Wow, I just read that my startup will fail.
So, I read this article http://www.paulgraham.com/startupmistakes.html and have learned that the startup I am working on is going to fail. As I go through the article I find I actually have made several of those mistakes.
1) I am a single founder. In fact, no one is helping me. I’ve gotten some very good advice, which was build the product and worry about the business later. So instead of...
April 2010
1 post
Not sure I understand the backlash by developers...
So, I see people complaining about Twitter doing things like buying Tweetie, and pushing features out that were originally created as separate applications by other developers using the platform. I guess Fred Wilson’s post about how they are looking for people to use Twitter to build revolutionary projects, instead of plug holes, ruffled some feathers too.
Seriously though, if you stop and...
March 2010
4 posts
Hacking at node.js headers
Node.js uses a hash for the headers by default. This is great, until you need to send multiple headers with the same name, such as Set-Cookie. There’s some hacks out there people have done for cookies to make sure they work in all browsers. I guess Safari supports comma delimited headers so you can set multiple cookies with one header. However, my experience has been that multiple Set-Cookie...
Going from Tornado to Node.js
Hi visitors from Reddit. Someone posted a link to a post over a year old. Don’t bother reading this. I’ve long since gone back to Tornado and enough has changed in both projects that any code below probably doesn’t apply.
I got pretty far into my primary project with Tornado. However, for the past couple months I’ve been really impressed with what I’ve been reading...
Just a test posting to Tumblr via Seesmic for Android. I can blog on the go now?
A lesson in when and how to announce a project.
Warning, a lot of what is posted in this article may seem 100% obvious to you.
So, this morning I posted to Hacker News, Dzone, and Programmable Web about my latest creation, Choip.Me.
I also did this on the same day that SXSW was going on. Primarily, this was an experiment. I wanted to see what would happen if I posted about a project I had but a moderate amount of effort into. Really Choip.me...
January 2010
2 posts
Projects, Streaming Radio, and the Samsung Moment
I know, I don’t update this thing very often. I’m still into heavy development on my projects. The primary one still isn’t released, however, http://hatethegame.net is up… just not having time to do any new comics. Maybe I’ll see about getting that Apple Tablet if it has software that can help.
However, the real point of the post is touch on streaming radio apps for...
Started a side project
I’m at the point on my main project, where I really need to be online to work. So, I’m not getting much done going back and forth to work anymore. Really, don’t feel like lugging the heavy laptop around anymore because of this.
So, this combined with a few other things, has prompted me to start a side project. I’m creating a webcomic, and having it hosted on appengine....