Many of my traditional blog post live on this site, but a great majority of my social-style posts can be found on my much-busier microbloging site at updates.passthejoe.net. It's busier because my BlogPoster "microblogging" script generates short, Twitter-style posts from the Linux or Windows (or anywhere you can run Ruby with too many Gems) command line, uploads them to the web server and send them out on my Twitter and Mastodon feeds.
I used to post to this blog via scripts and Unix/Linux utilities (curl and Unison) that helped me mirror the files locally and on the server. Since this site recently moved hosts, none of that is set up. I'm just using SFTP and SSH to write posts and manage the site.
Disqus comments are not live just yet because I'm not sure about what I'm going to do for the domain on this site. I'll probably restore the old domain at first just to have some continuity, but for now I like using the "free" domain from this site's new host, NearlyFreeSpeech.net.
I learn better, or should I say I only learn how to program when I have an actual problem to solve.
My current "problem" is figuring out how to generate more data out of my Ode blog's filesystem for my Ode Counter add-in.
I already report on the number of blog entries, how many are "real" entries and how many are Ode-generated social-media updates, plus how many images are in the filesystem and how many of those appear in actual blog posts.
Another thing I have wanted to do since I began using Ode was have the system generate a Categories/directories list in HTML for both a dedicated "site map" page as well as a sidebar display.
Buddy Burden released the next post in his series on programming, life and everything.
As I said recently, I'm a huge fan.
This one is about "getting shit done":
I’m one of those people who wants to write code to solve every problem that comes along. If I could figure out how to make a Perl script make my bed, or clean my room, then those things would certainly get done a hell of lot more often. I’d put it in a cronjob.
I’ve written code to calculate my kids’ allowances, email daily chores to them, track my hours for clients, keep track of info when hiring employees, reset the database for my music player, search for things in my instant messaging logs, organize my music collection, figure out how much space I have left in my Dropbox, balance my checkbook, query package management systems regardless of which flavor of Linux I happen to be running at the moment, calculate Weight Watchers points, track my todo list, count lines of code, print out certain lines from a file, and make a Gimp plugin to help me make cards for my favorite wargame ... and that’s just a small fraction.
...
I write a lot of code, even outside work. If there’s any obvious way to use code to solve a problem (and sometimes even if the way is non-obvious), I’m going to write a program. I can’t fix a car, I suck carpentry and plumbing, I’m not very good at yardwork or gardening, and I’m not even particularly useful at administering my family’s eclectic collection of personal computers, laptops, and tablets, but I can write the hell of out of some code. And I’m the type of person who will gleefully spend days trying to solve a problem with code that I could have probably just done manually in a few hours, because I don’t mind spending days on a program, ’cause it’s fun. But just because I don’t mind it doesn’t mean I want to do it all the time. What I’d really prefer is to get in, write the code, and get out. Just Get Shit Done. And that’s what Perl lets me do.
That's a programmer, all right. I don't usually drop quotes this big into entries, but there's way more I could have quoted from this excellent entry.
Again, the entire series is essential reading.
Buddy Burden writes a great eight-part series, Perl and Me, on his approach to programming, how he came to code in Perl and what he thinks is wrong (and right) with the profession and teaching of programming.
It's not all about Perl, though much of it is. Every programmer should read it.
My favorite is Perl and Me, Part 7: The Most Powerful Weapon Which You Can Use to Change the World
I would offer a few quotes from Part 7, but the whole thing is so good that you should just go read it now), then go back to Part 1.
Rob Reed, who created the Ode blogging system in Perl, writes about how he's looking into Python but still finds a whole lot to like about Perl in his entry titled I Like Perl:
Like many other people who work or play at web design and development, I've spent a considerable amount of time learning new (to me) languages in recent years. Now I'm starting to take a good look at Python. Why? First, because there seems to be a lot of promising activity around Python. But more importantly, I suppose it's because Python, like Perl, is readily usable beyond the web.
Keep in mind that I'm an IT guy more than I am a developer. That tends to be the way I look at things. Perl is a fantastic language for accomplishing all sorts of programming tasks (virtually anything you're likely to want to do that doesn't require a dedicated team of developers). Python is the same sort of language. By comparison PHP, Ruby, and others are not so much (which is not to suggest that they aren't perfectly fine languages for what they're used for).
The interesting thing is, the more I learn about these languages, the more I appreciate just how sensible Perl is. It makes me appreciate Perl all the more.
There's a lot more to this thoughtful entry, and I highly suggest you read the whole thing.
Chromatic, author of "Modern Perl," writes in a recent blog post anybody interested in programming should read, How to Learn Perl, these words to live by:
Find something that interests you. Find a way to automate it. Keep a list of changes or improvements or new techniques you might apply. Write down what you think about when you're commuting or walking or falling asleep or bathing. When you can't get it out of your head, break it into small pieces, test and experiment, and see what happens.Programming well requires knowledge, certainly, but like anything else it requires passion to keep you practicing in a disciplined way. The resources I've mentioned here can give you knowledge and will help you develop your discipline. (They're not the only resources, but I believe they're great resources.) What's left is up to you.