HNHacker News
TopNewBestAskShowJobs

shavenwarthog2

87 karma · joined February 19, 2011

submissionscomments
shavenwarthog2··on Ask HN: What overlooked class of tools should a self-taught programmer look into
In 2019 Makefiles are a useful tool for automating project-level things. Too often webapps will require you to install X to install Y to run producing artifact Z. Since Make is old and baked and everywhere, specifying "make Z" is a useful project-level development process. It's not tied to a language (e.g. Tox) nor a huge runtime (Docker). Make is small enough in scope to be easy, and large enough to be capable without a lot of incantations.

The big downside of Make, alas, is Windows compatibility.

shavenwarthog2··on Dart in 2016: Fastest growing language at Google, 2nd fastest in TIOBE
Dart's fascinating. It feels high level and object-oriented like Python, and can be used both web server- and client-side. Check it out!
shavenwarthog2··on Xv6, a simple Unix-like teaching operating system
This is an excellent tool for learning Unix-type systems. At < 10K lines, it's much smaller than Linux v1, but has most of the parts of a more mature kernel. The source code is clear, and well documented in its own booklet.

Highly recommended.

shavenwarthog2··on Pandora to Buy Rdio Assets for $75M, Rdio Files Ch.11, Will Shutter Service
<3 8tracks. In practice, my girlfriend and I play 8tracks sets at home; we very commonly listen to the same set over and over.

Very commonly I'll find an artist I like with 8tracks, then switch to Rdio to listen to the rest of their catalog.

RIP Rdio, you were awesome!

shavenwarthog2··on Pandora to Buy Rdio Assets for $75M, Rdio Files Ch.11, Will Shutter Service
I second this. I've been an extremely happy paid subscriber to Rdio for years. I generally listen to full albums on the desktop (at work), with a moderate bit of classical.

Rdio lets me find out about a specific musician/composer, then I get get to listen to a lot of their recorded output for free immediately, and repeat albums as much as I want.

RIP Rdio, you were awesome!

shavenwarthog2··on Why Don't Software Developers Use Static Analysis Tools to Find Bugs?
As a Python programmer, I live and die over Pylint. Yes it's annoying to configure it, but it saves me hours every _day_. The two biggest benefits are:

- syntax or undefined variables in exception handlers

- showing which modules are no longer used, so we can have a clearer import block

shavenwarthog2··on We Tried Slack and Regretted It
Seconded. I've used Slack at two companies, both with a small, single-purpose team (< 10 people). In each case I and the other users were quite happy with the features available, and the overall design of the app. It isn't for everyone, but I whole-heartedly advocate teams examine Slack for their communication needs.
shavenwarthog2··on Yahoo Pipes End-Of-life Announcement
I used Yahoo Pipes to find my apartment.

One pipe would grab data from Craigslist, strip out irrelevant items, and send me a text if anything new and interesting appeared. Ditto for Westside Rentals.

This combination worked great. If a lame apartment appeared in CL, I'd edit my Pipes regex to strip the same thing out of WR. In this way I'd get only texts for awesome places.

Vaya con dios, Yahoo Pipes!

shavenwarthog2··on Balanced payments is shutting down
I'm sorry to see Balanced go. As CTO, I used their service and was always impressed. The site and docs were clean and obvious, really helpful when dealing with scary things like money. Kudos, Balanced!
shavenwarthog2··on Parallelising Python with Threading and Multiprocessing
Multiprocessing supports "managed objects", shared across multiple processes -- example: http://johntellsall.blogspot.com/2014/05/code-multiprocessin...

I'm unsure of the performance ramifications vs using concurrent.futures

shavenwarthog2··on TDD is dead. Long live testing.
I've had great luck writing quality code by writing the tests first. Testing code is in a higher level -- simpler -- dialect of your main code, thus easier to understand. Gradually the tests cover more and more code, until I'm confident to go ahead and connect the functions into the main line of the system. If the code isn't 100% covered, that's fine, and if code is simple enough to not have tests at first, that's fine too.

Doing testing first helps ensure code is testable. I haven't found OP's issue of "overly complex web of intermediary objects" -- the Fudge mocking library helps alleviate that. Example: test code creates a fake urlopen(), which the receiving code uses instead of doing real I/O. No intermediates.

(This is Python, often with Django)

shavenwarthog2··on Spoofing the Samsung Smart TV Internet Check
A while back I "hacked" my Samsung TV. I spoofed a DNS entry to point to my laptop, and put a tiny webserver on it. Then I could hit the "News" button on my remote and get obscene fortune cookies on my TV!

Then I turned it off. Internet on TV is silly, as far as I can tell.

My girlfriend's wonderful Panasonic has tons of internet features -- web, youtube. Web is nearly useless because of lack of keyboard; youtube is awkward; vimeo isn't bad. Using an Android app, selecting your youtube video, then doing "send to TV" is great when we bother to do it.

The "smart" Panasonic is a dumb screen in front of Roku. The only other non-dumb features we use is the "play videos from SD card" feature, and the "play from DLNA (my laptop)" feature -- both get used quite often, and work well.

shavenwarthog2··on Huginn: Like Yahoo Pipes plus IFTTT on your server
Python :-) there are libraries specifically for parsing malformed html. I'm happy using Unix tools for scraping and parsing, but you run into a brick wall rather quickly. Python is more reliable, flexible, and easier to integrate.
shavenwarthog2··on Huginn: Like Yahoo Pipes plus IFTTT on your server
I published a few pipes -- enjoy! http://pipes.yahoo.com/pipes/person.info?guid=W4YBIUCXEVLHMS...

They're all quite simple. The most complex one uses the "parse location into lat/long" Pipes feature to automatically find me jobs in the Los Angeles area.

shavenwarthog2··on Huginn: Like Yahoo Pipes plus IFTTT on your server
It's hard to tell -- I tweaked it quite a bit, and rewrote it from scratch 2-3x. I'd say 4-10 hours.

Was it worth it? As a programmer, no. I'm very familiar with scraping (raw) web/RSS feeds for data, then processing it. I was hoping Pipes would have enough intelligence, so that I could subscribe to (cooked) data sources, then split and refine the results.

In practice, Pipes worked, but the data always required further post-processing, which was awkward to do in Pipes. You have to be a dev to understand what your system is doing, but you don't have easy access to all the standard dev things.

I look forward to seeing Pipes take off, or another technology (Huginn? Ifttt?) replace it. It was a lot of fun to wire things up graphically then for example get a text when someone's RSS feed changed.

shavenwarthog2··on Huginn: Like Yahoo Pipes plus IFTTT on your server
Agreed. I did a multipart Yahoo Pipes project to find my current apartment. It grabbed info from two sites, tossed out the uninteresting ones, filtered it a bit, then texted me if a new apartment in my price/location range appeared.

Very useful, if a little awkward. The Huginn project sounds like a great alternative!

shavenwarthog2··on Astute.io – Business Intelligence For Startups
I'm very interested in business intelligence for my startup, and am happy to pay a service for this. Alas the OP's site seems premature. No info.
shavenwarthog2··on “The Mill” – It just might Work
Sounds like the Intel i860 from the late 1990s. Frighteningly fast VLIW in theory, but in practice not so much. I think untweaked code ran at 3% of max speed.
shavenwarthog2··on Critical crypto bug leaves Linux, hundreds of apps open to eavesdropping
Yes. For others:

1) consider installing the "unattended-upgrades" tool, to install security updates via cron. https://help.ubuntu.com/community/AutomaticSecurityUpdates

2) specific Ubuntu Security Notice on GnuTLS: http://www.ubuntu.com/usn/usn-2121-1/

3) List specific package affected:

dpkg-query -W libgnutls*

libgnutls-openssl27:amd64 2.12.23-1ubuntu4 libgnutls26:amd64 2.12.23-1ubuntu4

I'm on Linux Mint, and the above seem to show that I'm protected. Yay!

shavenwarthog2··on Python and Flask Are Powerful
Agreed. I got my first job running correctly with Rq in fifteen minutes, and was able to go on to other things. Recommended!
shavenwarthog2··on 0 A.D. Alpha 15 - Osiris
Thanks! I looooved Total Annihilation, I'd love to play some more!
shavenwarthog2··on Cards Stolen in Target Breach Flood Underground Markets
I'm happy to hate on Bank of America, but they've caught multiple fraudulent charges for me too. Good for them!
shavenwarthog2··on I've Been Using Evernote All Wrong. Here's Why It's Actually Amazing
I agree, for some reason Evernote always rubbed me the wrong way.

An alternative I really like is Springpad. You can write notes or Todos, put in notebooks with tags, or take a picture. It recognizes what a "movie" is and gives you extra information. Multiple people can collaborate on a notebook. Plugins are for Firefox and Chrome; I mostly use the Android client. I found it easy and fun to worth with!

https://springpad.com/blog/

shavenwarthog2··on Whoosh – Fast, full-text indexing and searching library in Python
I recommend taking a look at Whoosh -- I worked with it extensively a few years back, adding a keyvalue backend for it.

It seems to be designed for indexing manpages. That is, a medium-sized semi-static database with a few different dimensions per document.

shavenwarthog2··on Moving from Ubuntu to Debian
+1 Mint. I used Ubuntu, not Debian, because things "just worked." Ubuntu over time seemed to get slower and more intrusive, so I tried out Mint. It is fast, not over complex, and things like media and devices Just Work. I'm a fan of the Cinnamon interface, although in practice I use a minimal tiling window manager like i3 or wmii.

I'm a big fan of the Debian way of doing things. Next time I have an excuse I'll try LMDE (Linux Mint Debian Edition.)

http://www.linuxmint.com/

shavenwarthog2··on An introduction to libuv
high performance I/O library, with Windows support. I'm happy to note it has bindings for a lot of languages, including Python:

https://github.com/joyent/libuv/wiki/Projects-that-use-libuv

I'm very familiar with Twisted, Perl AnyEvent, and Gevent/Greenlet -- libuv seems to be like that.

shavenwarthog2··on The Navy’s newest warship is powered by Linux
LynxOS is hard-real-time, unlike Linux, but is Linux-compatible.

http://en.wikipedia.org/wiki/LynxOS

shavenwarthog2··on The Obamacare software mess
On NPR the other day they said solidly red Kentucky is running their own site, and is doing really well. It sounded like they were more specific in what they wanted, and perhaps had reduced functionality thus complexity. Either way, kudos!

I would have thought California (note: I live in CA) would have had a good healthcare site, considering all the techies, but I guess in this case that didn't work out.

map of state/fed/joint-run sites: http://www.dailykos.com/story/2013/10/03/1243855/-Kentucky-s...

shavenwarthog2··on Cyanogen raises $7 million to build a better version of Android
Wonderful news. I've used three different major versions of CM on my antique wheezy Nook Color, and it's made all the difference. Salud!
shavenwarthog2··on They're Taking Over - jellyfish bloom and the future of the ocean.
I saw the author, my friend Lisa-ann Gerswhin give a talk recently. The startling points I came away with are: 1) There are several strong self-reinforcing loops that dramatically help jellyfish, at the expense of human-valued things -- like fish. 2) Jellyfish are becoming so abundant they're jamming water inlets... to nuclear power plants and everything else. 3) Jellyfish can eat stuff (fish), but nothing can eat jellyfish -- they're a completely different food chain.
Page 1 of 2Next →