Archive for the ‘Programming Languages’ Category

Bookmarks.

Saturday, September 17th, 2016

Two things I found on the YCombinator Twitter feed that I want to bookmark:

“JavaScript Systems Music”. I’m not really good at music in general, nor am I the audio guy of my group of friends (Hi, Todd!). But I am kind of generally interested in computer audio, and the subtitle of this one sucked me in: “Learning Web Audio by Recreating The Works of Steve Reich and Brian Eno”. Yes, you can do in JavaScript what Steve Reich did with tape loops in 1965.

To say I actually enjoy listening to this piece would probably be stretching it. It wouldn’t be among the records I’d take with me on a desert island. But it is certainly fascinating and kind of hypnotic too. If you allow it to, it does evoke a certain kind of mental atmosphere.

I like “It’s Gonna Rain”, but, yeah, this.

YComb also linked to an article here, but I actually find the whole site interesting and want to bookmark it: Gary McGath’s “Mad File Format Science”. Or everything you ever wanted to know about file formats, identifying them, and recovering data from them.

As you know, Bob, I’m not a “Star Trek” fan, but I did find this interesting:

Some time after his death in 1991, Roddenberry’s estate discovered almost 200 floppies of his. They went to a company called DriveSavers Data Recovery, which took years to recover the documents due to the unusual challenges.

The floppies were written on CP/M systems custom built for Roddenberry with special disk drivers.

“DriveSavers took three months to reverse engineer the disk format.”

Anyway, I want to spend more time exploring this site. I’m also tempted to spring for his udemy course: $20, open-source tools, and hey! I can actually make a case that it is job related!

More on Blue Hydra.

Sunday, August 7th, 2016

Earlier, I wrote “It runs! It works! Mostly. Kind of.”

I’ve been banging on Blue Hydra in my spare time since Thursday, and I stand by that statement. Here’s what I’ve run into so far.

The README is pretty clear, and I didn’t have any problems installing the required packages. (I don’t have an Ubertooth, so I skipped that one. We’ll come back to the Ubertooth later.)

First problem, which was actually very tiny: I know next to nothing about Ruby, other than that cartoon foxes are somehow involved, so the phrase “With ruby installed add the bundler gem” was more like “I don’t speak your crazy moon language”. Google cleared that up pretty quickly: the magic words are gem install bundler.

Next problem: running bundle install resulted in an error stating that it couldn’t find the Ruby header files. It turns out that, while my Ubuntu installation had Ruby 2.1 installed, it didn’t have the ruby-dev package installed. sudo apt-get install ruby-dev fixed that issue.

Next problem: the SQLIte Ruby gem failed to install when I ran bundle install. It turns out that I also needed the sqlite3-dev package as well. And with that installed, the bundle built, and I could do ./bin/blue_hydra.

Which gave an error stating that it didn’t have permissions to open a handle for write. Okay, let’s try sudo ./bin/blue_hydra (because I always run code from strangers as root on my machine; everyone knows strangers have the best candy). And that actually worked: Blue Hydra launched and ran just fine. In fairness, this may be a configuration issue on my machine, and not an issue with the software itself.

In playing with it, I’ve found that it does what it claims to do. Sort of. It’s been able to detect devices in my small lab environment with Bluetooth discovery turned off, which is impressive. I also like the fact that it stores data into an SQLite database; other Bluetooth scanning tools I’ve played with didn’t do that.

However, it seems to take a while to detect my iPhone; in some instances, it doesn’t detect it at all until I go into Settings->Bluetooth. Once I’m in the Bluetooth settings, even if I don’t make a change, Blue Hydra seems to pick up the iPhone. Blue Hydra also has totally failed to detect another smart phone in my small lab environment (and I have verified that Bluetooth was both on and set to discoverable.)

Now, to be fair, there may be some other things going on:

  • I’ve also observed previously that Bluetooth under Ubuntu 15.10 didn’t work very well. At all. So at one point on Saturday, just for giggles, I upgraded Project e to Ubuntu 16.01.1 LTS. And shockingly (at least for me) Bluetooth works much much better. As in, I can actually pair my phone with Ubuntu and do other Bluetooth related stuff that didn’t work with 15.10. That seems to have mitigated the discovery issues I was seeing with Blue Hydra a little, but not as much as I would have liked. (Edited to add 8/8: Forgot to mention: after I upgraded, I did have to rerun bundle install to get Blue Hydra working again. But the second time, it ran without incident or error, and Blue Hydra worked immediately aftewards (though it still required root).)
  • I was using the Asus built-in Bluetooth adapter in my testing. Also just for giggles, I switched Blue Hydra to use an external USB adapter as well. That didn’t seem to make a difference.
  • In fairness, Blue Hydra may be designed to work best with an Ubertooth One. The temptation is great to pick one of those up. It is also tempting to pick up a BCM20702A0 based external adapter (like this one) partly to see if that works better, partly because I don’t have a Bluetooth LE compatible adapter (and this one is cheap) and partly because the Bluetooth lock stuff is based on that adapter. (Edited to add 8/8: I’m also tempted by this Sena UD100 adapter. It is a little more expensive, but also high power and has a SMA antenna connector. That could be useful.)
  • It may also be that I have an unreasonable expectation. Project e is seven years old at this point, and, while it still runs Ubuntu reasonably well, I do feel some slowness. Also, I think the battery life is slipping, and I’m not sure if replacements are available. I’ve been thinking off and on about replacing it with something gently used from Discount Electronics: something like a Core i5 or Core i7 machine with USB3 and a GPU that will work with hashcat. Maybe. We’ll see. Point is, some of my issues may just be “limits of old hardware” rather than bugs.
  • And who knows? There may very well be some bugs that get fixed after DEFCON.

tl, dr: Blue Hydra is nice, but I’m not yet convinced it is the second coming of Christ that I’ve been waiting for.

This brought a much needed smile to my face.

Thursday, April 14th, 2016

Classic Programmer Paintings.

Some of my personal favorites.

(Hattip: Morlock Publishing on the Twitter.)

New toy! New project!

Saturday, April 9th, 2016

I was out and about earlier today with my mom and my nephew: we stopped by Hobby Lobby because I was looking for something. I’ll be posting about that something later on, but while we were there, I found one of these and ended up getting a screaming deal on it with the 40% off coupon.

Which is great, but that looks like a manual control box, right? How do you control it with a PC? Lots of soldering and a custom circuit board?

Ah. Nope. They have a USB device interface for the OWI-535. Isn’t that nifty?

But wait! The included software only runs on a PC! How do you control it with a Mac, or a LINUX system?

Surprise! People have reverse-engineered the control protocol! For example, this guy! (I love that blog title, by the way.) It looks like most of the other control examples I’ve found all loop back to Vadim Zaliva’s work documenting the protocol for the OWI-535. (He’s also documented the control protocol for the OWI-007 here.)

And look! Here’s control code in Python. running on a Raspberry Pi! Isn’t that a clever cleaver!

We’ll see if I can get the arm together and working without breaking it. Bad news: I don’t have that much mechanical aptitude. Good news: they claim all you need is needle-nosed pliers, diagonal cutters, and a Phillips screwdriver. No soldering required, which is good. I could probably solder my way out of a paper bag if someone held a gun to my head, but I’ve never been what you could call “good”, or even “competent” at it…

(As a side note, I’ve been trying to get back to “Talkin’ GPS Blues“. Unfortunately, I also decided to upgrade Project e to Ubuntu 15.10…and Bluetooth apparently doesn’t work well on 15.10, at least as of when I completed the upgrade. So once I get Bluetooth working again, and have some more time, I intend to revisit GPS, this time with some skanky Perl, Python, and possibly even Java code. We’ll see.)

My humps, my humps…

Friday, February 14th, 2014

A camel that escaped from a Palmdale property and began charging people and cars is now in the custody of animal control officials.

Thoughts:

1. I admit I’ve written some bad Perl code. But I don’t recall writing any that ran away. SQL queries, yes, but not Perl code.
2. “Runaway Camel” sort of sounds like a stunt organized by those truth jackasses.
3. I have a “primates” tag; do I need a “mammals” tag?

Edited to add: I think I do need a “mammals” tag, and an associated “camels” tag. But even though primates are mammals, I don’t feel right moving the “primates” tag under the “mammals” tag, so I’m keeping them separate for now.

Today’s update from the Department of Things That Make You Go “Hmmmmmmmmmmm”.

Thursday, January 16th, 2014

I found a couple of interesting little tidbits while going through the “Cisco 2014 Annual Security Report”. Before I begin, disclaimer and explainer: keep in mind that I am a contractor for Cisco. However, the 2014 Report is not a Cisco internal document, but is available to the public. You can download it here, though you do have to enter your name and an email address.

Things that I found interesting:

Ninety-nine percent of all mobile malware in 2013 targeted Android devices. Android users also have the highest encounter rate (71 percent) with all forms of web-delivered malware.

You. Don’t. Say.

Spam volume was on a downward trend worldwide in 2013. However, while the overall volume may have decreased, the proportion of maliciously intended spam remained constant.

So we’re winning? Maybe?

Of all the web-based threats that undermine security, vulnerabilities in the Java programming language continue to be the most frequently exploited target by online criminals, according to Cisco data.

More:

Data from Sourcefire, now part of Cisco, also shows that Java exploits make up the vast majority (91 percent) of indicators of compromise (IoCs) that are monitored by Sourcefire’s FireAMP solution for advanced malware analysis and protection (Figure 12).

So should you disable Java? I think Borepatch would probably say “yes”. But this is also interesting:

90 percent of Cisco customers use a version of the Java 7 Runtime Environment, the most current version of the program. This is good from a security standpoint, since this version is likely to offer greater protection against vulnerabilities…
…However, Cisco TRAC/SIO research also shows that 76 percent of enterprises using Cisco solutions are also using the Java 6 Runtime Environment, in addition to Java 7.

JRE6 has been end-of-lifed and is no longer supported. I’m thinking the best practice here is:

A. Carefully evaluate your need for Java.
II. If you do need it, use the most current version.

At 43.8 percent, Andr/Qdplugin-A was the most frequently encountered mobile malware, according to Cisco TRAC/SIO research. Typical encounters were through repackaged copies of legitimate apps distributed through unofficial marketplaces.

“unofficial marketplaces”. You. Don’t. Say.

There’s a lot more in the report, including a brief discussion of Wireshark and Python tools for doing data analysis. I do commend it to your attention, even though my bias here is obvious.

Edited to add: left out one I intended to include.

In a recent project reviewing Domain Name Service (DNS) lookups originating from inside corporate networks, Cisco threat intelligence experts found that in every case, organizations showed evidence that their networks had been misused or compromised.
For example, 100 percent of the business networks analyzed by Cisco had traffic going to websites that host malware, while 92 percent show traffic to webpages without content, which typically host malicious activity. Ninety-six percent of the networks reviewed showed traffic to hijacked servers.

Noted.

Thursday, August 15th, 2013

The 5th edition of Learning Python is out.

Since I am not an idiot, I bought the ebook; doing so is easier both on my wallet and on my back. I started reading it and working through the examples last night.

Quoth Chapter 1, under “Who uses Python today?”:

The IronPort email server product uses more than 1 million lines of Python code to do its job.

I can only smile and say “No. Comment.

And a few bullet points later:

The NSA uses Python for cryptography and intelligence analysis.

So remember, folks: the NSA is spying on you, but they’re doing it with open source software. Doesn’t that make you feel better?

(Yes, yes, I’m sure the NSA also uses Perl and Java and Visual Basic and FORTH and even internally developed languages that are still classified. I just found it funny, is all.)

Random notes: June 15, 2013.

Saturday, June 15th, 2013

NYT headline:

Minnesota Man, 94, Is Investigated for Nazi Ties

I think, with Father’s Day approaching, this is an important safety tip for everyone. A tie may be a good gift for Dad, if he has to wear ties and if you put some thought into it. However, I’d recommend staying away from ties with Nazi iconography, just as a general rule.

When two student journalists from Paw Prints, the newspaper of West Islip High School, set out to investigate school security, they thought they might do some good, maybe win the award for story of the year in the Long Island Press high school journalism contest. Instead, the article was quashed, and they wound up with a grown-up lesson in the consequences of testing nerves in a post-Newtown-massacre world.

Randal Schwartz, call your office please.

(That was perhaps my only disappointment at YAPC. As I noted, I did get to shake Larry Wall’s hand, but I never saw Randal Schwartz; I’m not even sure if he was there.)

There’s a protest singer singing a protest song.

Another NYT headline:

A Precarious Olympic Bid for Istanbul

Not Constantinople?

(Technically, I suppose that’s nobody’s business but the Turks. And, I guess, the IOC.)

No Sleep Till Sunday.

Saturday, June 8th, 2013

In my previous post, I talked a little about the non-technical “amenities” (for want of a better word) at YAPC 2013. In this post, I want to talk some about the technical presentations at the conference, and a bit about the social aspects.

One thing I really liked about YAPC was the “Hallway Track”, or “Hallway++”. The basic idea behind “Hallway++” appears to have come from a gentleman named Matt S. Trout, and is based on two key ideas:

  1. The most valuable discussions often take place, not during talks, but in the hallway between talks.
  2. Too many people are afraid of disturbing or bothering someone in the hallway, and thus discussions don’t get started.

Thus, Hallway++. Hallway++ participants wear a sticker on their badge, or some other indicator to show they’re participating in Hallway++.

If you see somebody with Hallway++ on their badge, or a group with a sign saying Hallway++ on their table, that tells you in advance that you won’t be interrupting.

At least, it means you won’t be rudely interrupting – you may walk up to me and be told “frantically working on slides, please find me sometime after my next talk”, or you may walk up to a group and be told “sorry, we’re discussing a startup idea, we’ll wave when we’re done”.

The point here is to flip the defaults – for this symbol to say “I would rather risk a brief disruption to whatever I’m doing than risk missing out on an interesting conversation.”

So the Hallway++ badge/sign tells you that this person would rather you did try to talk to them, and not to worry about it.

I like this idea. I like this idea a lot. I want to marry it and have babies with it. More seriously, I would like to see this idea extended beyond technical conferences; I am seriously considering taking it to WorldCon if I end up going.

Did it work? Well, I had a fair number of quick interactions with participants, but no deep technical conversations. That’s more on me, though; in retrospect, I should have sought out more Hallway++ participants and tried harder to strike up conversations. (This is, as everyone knows, a hard thing for me.) Mr. Trout made what I thought was an interesting point in his talk on Wednesday: he’d thought Hallway++ would be a signal to introverts that it was okay to talk to extroverts, but as it turned out it was more of a symbol to extroverts that it was okay to talk to the introverts.

Another social note: YAPC 2013 in particular, and I believe YAPC in general (but since this was my first one, I can’t prove it) is very welcoming to first-time attendees. Monday morning, we were told that we (the first-time attendees) were considered to be VIPs, and would be treated as such: from the point of view of the YAPC organizers, we are the future of the language, and thus they want to treat us well

In that vein, I’d like to publicly thank Wendy Van Dijk for taking myself and several other first-time attendees under her wing on Monday night and taking us to dinner with her, Gabor Szabo, and about eight other folks whose names I didn’t catch. Not only did Wendy drag invite us along, she even paid for part of the dinner. Thanks, Wendy, and if we’re ever at another YAPC together, or if I make it to the Netherlands, I hope to be able to reciprocate.

What of the talks? I didn’t take detailed DEFCON level notes on them, but here’s a list of the ones I went to, along with comments as appropriate. Things were structured so that there was a morning ‎plenary‎ session with breakfast (to cover important announcements) and a later afternoon single track of presentations by prominent figures, leading into the 10 minute lightning talks. So I did go to the “Welcome to YAPC” talk as well as Mark Keating’s “The Perl of Christmas Past”, since those were single tracks and the other option was to stand outside and eat pigs in a blanket.

Here’s some of the other stuff I liked. (Slides) indicates that the slides for that talk are available from the linked page at the time I write this. YAPC did live streaming video during the talks, and has a video page where they plan to upload talk videos post-conference:

tl,dr: YAPC 2013 was one of the best events I’ve been to, from both a technical standpoint and an organizational standpoint.

Would I go back? That’s a problem for me. I don’t program in Perl professionally, so I don’t have someone who will pay my way. If I’m paying out of my own pocket, with airfare and hotel it becomes a budget stretch, and I don’t feel like I can afford YAPC, the S&WCA convention, and DEFCON every year. (At the moment, I can’t even afford the latter two this year.)

But next time YAPC is in my backyard (defined as “someplace I can reasonably drive to”) I’ll stay at the Motel 6. Or the Motel 3 1/2.

Thanks again to Wendy, the YAPC 2013 organizers, the good folks at the job fair, the presenters, and anyone else I may have forgotten. (Please feel free to tell me I forgot you in the comments.)

(Subject line hattip.)

Random notes on YAPC 2013.

Wednesday, June 5th, 2013

I’ve been lucky in a lot of ways. One of those is that I’ve been able to attend a decent number of professional events.

DEFCON is…DEFCON. It is probably about as well organized as it is possible for a group of people trying to herd 20,000 hackers to make it. The Black Hat briefings I went to were well organized, but I haven’t been to one of those in about 8 years, and that much money plus that many attendees buys a lot of organization.

I commented earlier that Texas LINUX Fest seemed well organized this year.

So how was Yet Another Perl Conference 2013?

I paid $80 to get in. And it was among the best and most thoughtfully organized technical conferences I have attended. Black Hat is perhaps the only other conference that, in my experience, even comes close – and that’s four figures to get into, so the trains had better run on time.

Every talk I went to started on time, or within a minute of the scheduled time. The tracks were thoughtfully divided into sections of 45 minutes or 20 minutes, so you had a good mix of shorter and longer talks. I think the 45 minute/20 minute track strategy is something other conferences (cough cough DEFCON cough cough) could benefit from. Some of the talks ran a few minutes longer than scheduled, but that was okay…

…because people were interacting, and the organizers built in generous 15 to 25 minute breaks between each track, so you had time to linger or run over a bit and still make the next talk…

…and/or grab a snack, because the organizers also provided food and drink. There was a morning breakfast, a mid-morning snack, and a 25 minute late afternoon break with snacks provided as well. And they laid out a decent spread: coffee, tea, juice, pigs in a blanket, doughnuts, bagels, muffins, and fruit for breakfast. More coffee, tea, and packaged snacks for the morning break. Cheese, crackers, cookies, veggies and dip, and more coffee and tea for the afternoon snack. And sodas all the time. Pretty much unlimited sodas. I almost think I may have drunk $80 worth of Diet Dr. Pepper. And on Monday night, they had the most magical words in the English language…

…”open bar”. (This was a pre-dinner mixer, and they did ask folks to voluntarily restrict themselves to one free alcoholic drink.) But enough about the food. What about the…

…tchotchkes? The conference provided ones were very good: a t-shirt, coffee mug, pens, notepads, and some other things I’m forgetting. One omission: they did not provide any kind of bag. (A couple of exhibitors, including my friend whump’s company WhiteHat Security, provided bags, but those didn’t show up until the second day of the conference. WhiteHat also provided some of those neat flashy bouncy balls, which I’m sure will be a big hit with the younger set.)

…The organizers also set up a job fair, at which I got a fair number of leads and even more stuff. Shutterstock (Edited to add: thanks to Nick Patch for correcting my synaptic misfire on this.) gave me a pretty cool t-shirt, which I may try to get a photo of later. Also noteworthy: the 4GB flash drive from MediaMath (which should be awesome for setting up a bootable LINUX distro: right now, I’m thinking Debian), and the aluminum water bottles from Booking.com. I’m afraid I’m forgetting someone who gave me something really cool, but I got so much stuff I could hardly carry it all. If I did overlook someone, I’ll try to make up for it in a second post.

Speaking of a second post, I think I want to end this one here and write about the actual talks I went to in a second post, just to keep the length on this one down to something reasonable. I also want to say thanks to a couple of folks and talk about Hallway++.

I realize I’ve been talking more about the stuff around the conference than the actual conference itself, but those things go a long way towards making people feel comfortable and welcome. When they are well done, like at YAPC 2013, people are happy. Happy people tend to learn more and interact more with each other.

Alive.

Tuesday, June 4th, 2013

Just busier than a one-legged man in a butt kicking contest.

I did get to shake Larry Wall’s hand and say thanks to him. (For those of you who are not Perl people, this is like an observant Jew meeting Moses.)

I also got to spend some time with Bill “whump” Humphries, who was in town presenting “Perl Meets Modern Web UI”. I thought it was a great talk, but I’m biased: I’ve known Bill since our days in the CIA spying on student organizations at the University of Texas, though I haven’t seen as much of him as I’d like in the past few years.

More as time permits. The “Hack Your Mac With Perl” talk is about to start.

Stuff and things.

Sunday, June 2nd, 2013

Last week was not a good week. This coming week is shaping up to be pretty hectic (though I am hoping not as personally unpleasant), so there may be a blogging slowdown.

I spent all day yesterday at the 2013 edition of the Texas LINUX Fest. I haven’t been since 2010, but that had less to do with my frustrations with the 2010 organization and more to do with personal issues. (In 2011, that just turned out to be a bad weekend, with having to get my car inspected and deal with other things. Last year, it was in San Antonio; while that may be a welcome change of pace, the schedule wasn’t compelling enough to make me drive 150 miles round trip.)

I thought about doing detailed summaries of each session I attended, but frankly I’m a little worn out and a little lazy. I’d rather mention a handful of panels I did like. (There were some others that I went to, but don’t feel I can fairly evaluate because they weren’t what I was expecting, or I was distracted by other issues (see below), or, in one case, I just think it’d be a jerk move to badmouth the presenter.)

I really enjoyed Theo Schlossnagle’s “Scaling: Lessons Learned and Their Applications to Apache Culture” keynote speech, which covered a lot of good points about complex systems. He sees commonalities between building scalable systems and building communities to support them. Many of the points he made may not be hot news flashes but are worth repeating. Among those:

  • People get so caught up in how awesome it it to build stuff that they forget what the real world looks like.
  • Code is just a tool. It isn’t a child or a family member. You don’t have loyalty to it.
  • Engineers have a tendency to focus on the technology they love instead of the actual problems they face.
  • At the core of things, your job is to tell the computer what to do.
  • Unbalanced hyperspecialization leads to poorly constructed solutions.
  • The biggest challenge is that increasing scale and increasing performance demands lead to increased complexity.
  • Technological complexity is an emergent property of complex and changing business problems. This complexity has to be understood and managed, which is difficult for specialists.
  • If you don’t provide value, your [stuff] doesn’t matter.
  • In order to survive, we need generalists. Schlossnagle didn’t quote Heinlein, but he might as well have.

David Stokes from Oracle did what I thought was an excellent talk on “The Proper Care and Feeding of a MySQL Database”. I’ve mentioned before that I’ve been dabbling in MySQL, so I got a lot out of this. Some of it may have been obvious (more RAM, more disks, good things. Use decent hardware, not something you scavenged from the admin assistant because it was too slow to run the latest Office), but the two things we learn from history are that too many people don’t learn from history, and that the obvious often isn’t.

Philip Ballew’s “Ubuntu; Where We Were, and Where We Are” presentation was…amusing, shall we say, mostly for the level of skepticism directed at Ballew from the audience, many of whom seem to be skeptical about recent Ubuntu decisions like the replacement of X. I’m becoming increasingly skeptical of Ubuntu myself; I just upgraded to 13.04, and now I’m running into the “The system is running in low-graphics mode” error, which I haven’t had time to fully debug. The worst part is that I’m getting this only intermittently; I think it may be a timing issue, possibly with some Virtual Box kernel extensions.

Owen Delong’s “IPv6 – It’s Easy on LINUX” presentation was also very good. I haven’t even started to configure my systems for IPv6 (and I’m not sure everything supports it: I’m sure about the Mac and Project e, but less sure about some older gear), so I found Delong’s talk useful. I was surprised, though, that there was even more hostility and skepticism from the crowd than there was at the Ubuntu panel. Why is IPv6 an issue in 2013? And many of the questions from the crowd seemed to boil down to “How do I emulate this particular thing I do in IPv4 using IPv6, even though the reason this is needed in IPv4 is because we have a limited number of IPv4 addresses available, where in IPv6 we could give every single atom in the universe a unique address and not run out?”

Okay, that was a long question, but you get the point.

Brad Richardson’s “GPU based password recovery on LINUX” lightning talk is worth checking out. He was able to do the talk in about five minutes, instead of the allotted ten, and the subject is interesting; using reasonably priced GPUs, you can rapidly break MD5 hashes, orders of magnitude faster than throwing a general purpose CPU at the problem. (Richardson’s slides give specific performance figures: try 16 hours 46 minutes to brute-force a “8 character password with lowercase, uppercase, and numbers”, versus an estimated 36 days for a CPU based attack.)

Anyway. Tomorrow is the start (for me) of Yet Another Perl Conference 2013. (I registered for the conference itself, but couldn’t afford any of the training going on over the weekend or after the conference. Plus the training conflicted with the LINUX Fest.) I expect to be pretty tied up Monday through Wednesday, though I will try to blog from YAPC as downtime and network connectivity permits. I may even try to blog YAPC 2013 itself, but I can’t promise that.

Edited to add: Why did I not have a “Perl” category on this blog, but did have a “Python” category, given that I use Perl more often than Python? Fixed.

Edited to add 2: Thinking some more about it, it made sense to have a “Programming Languages” category and make Perl, Python, and others sub-categories below that. I’m still thinking about whether it makes sense to put the languages category under “CompSci”, but that way lies TJIC madness.

Edited to add 3: I realized there were two other points I wanted to make.

  1. I was much more favorably impressed with the organization of TXLF this year than I was in 2010. Of course, they’ve had four of these, so you would expect them to have the bugs fixed. Still, I was impressed at how smoothly almost everything from registration onwards ran. The only problem I saw was an unexplained 20 minute delay in the start of the lightning talks, but I didn’t feel that was a major issue.
  2. The quantity of tchotchkes available at TXLF? Very high. The quality of tchotchkes available? Still evaluating that, but I’m decently impressed. Favorites: the microfiber cleaning cloths from OrangeFS, and the SavvisDirect USB/12V adapters. Special mention goes to Hostgator, who were giving away a much wider variety of tchotchkes than any other single vendor.