My latest batch of Git resources

Finally getting serious about learning and using Git, so, to clean out my tabs, here’s what I’m looking at right now:

I guess it’s pretty obvious that I’m interested in learning the basics as well as how to best use Git for writing projects (though I definitely need to use it for programming projects as well).

Posted in Uncategorized | Leave a comment

Some links of special interest to me

These links will prove useful in the future. And may be interesting to others, so here goes:

Posted in Uncategorized | Leave a comment

Using and learning Git

Any time you want to be able to keep track of all the aspects of a project, particularly to be able to roll back the state of a set of files to a previous version, you want to use version control software of some sort.

This type of application is particularly important to software developers of all types, but I believe it can be very useful for non-programmers who need (or want) to keep track of what they’ve been doing over time in various projects.

The most fashionable of the version control systems available these days would have to be Gitwritten as a set of small utilities that can be plugged together to do everything necessary to version control. It’s also distributed so you don’t necessarily need to depend on a single server to work with project files.

This is mostly a list of links to good Git resources that I’ve found, so far:

Posted in git, learning to program | Leave a comment

Using Ruby to learn to program

I got interested in the possibility of learning Ruby after seeing Ruby for Kids: teach programming by writing games in Ruby on Reddit last month.

I’m still not “ready” to dive in, but I did want to line up a few resources, which I’ve culled from the original Reddit post:

  • Ruby for Kids. It’s just a website with links to various other places, like Gosu, which is a 2d game library for Ruby, but also with some screencasts intended to get you started.
  • Suggested by a Redditor, “Hackety Hack will teach you the absolute basics of programming from the ground up. No previous programming experience is needed!” Just my kind of thing. Seems to be a package with all the bits you need to get started.
  • Quby also looks kind of interesting, presumably it’s based on Ruby, but I haven’t had much time to dig in. Mostly for playing games, which is fine.

Finally, here’s another Reddit post that could be helpful as well: I wrote a Ruby script modeled after today’s XKCD alt-text, but also as an inspiration for the kind of program that regular people might decide to write.

Posted in learning to program | Leave a comment

Really? We’re still manually running system diagnostics, Microsoft?

Ran across this item from the NYT: Tip of the Week: Running Windows Diagnostics.

I guess it’s great that you can run a diagnostic tool whenever you want in Windows, but come on: is it really necessary to tell users, in 2011, that they should manually run some diagnostic tool on what Microsoft’s Ballmer touts ‘best version of Windows ever’? (don’t even get me started about why the latest version of a piece software should be anything BUT better than all the previous versions…)

Having done support on early versions of Windows back in the 80s and 90s, I can recall the goggling/boggling of users being told that they should try running some Microsoft diagnostic or other on a regular basis. Really? Isn’t the computer supposed to do those repetitively tedious chores?

I’m pretty sure I’ve linked to this article before, but here it goes again: Things I can do in Linux that I can’t do on Windows. Yes, it’s a bit dated, but I think the first three items in the list make a pretty good case for Linux.

Also, for teh lulz, check this out: Chain of Fools : Upgrading through every version of windows (HQ). There’s a video to link to, and a discussion of the nostalgic appeal of running through those old, endless, installs.

Posted in Microsoft Windows | Leave a comment

Emacs Artist Mode

Emacs really is quite an extraordinary program, and there are many who have used it extensively over many years. There’s a lot of cool things that have been invented to take advantage of the Emacs environment. For example, there’s this: Emacs Artist Mode (link to article in MetaFilter).

That link is interesting for a number of good reasons:

  • The underlying link is to a screencast that shows just how cool it is to be able to create graphics, albeit just ASCII-mode character-based graphics, with a mousepointer in Emacs.

    I see that, and think to myself, that’s one of the coolest things I’ve seen in a while, and I don’t even know why–but it makes me wish for it when I’m writing comments in programs, or just typing out simple documents.

  • If you read the comments at the MetaFilter link, you’ll find some witty repartee among text-editor afficianados who argue the merits of vi vs Emacs (vs a small minority who like various others), those exchanges often comprising years of editor-prejudice. It’s sort of comforting to hear that almost ritualized tribalism among people like me, who have worked in the business for years.

    Also, various actually helpful tips and links, for example to other Emacs functions, as well as the inevitable Emacs-related cartoon.

  • That the cartoon linked to was not this tells me something important: this is not a gathering of wannabe-old-time computer guys, this is an actual gathering of actual old-time computer guys. It’s an in-joke which can be appreciated on multiple levels, but which would likely only seem moderately amusing to the uninitiated.

    I’m beginning to notice that kind of barrier imposed on those who seek the higher levels of knowledge: you have to figure it out for your yourself; it’s not good if just anyone could click a button and start using Emacs. It wouldn’t be the same, but it wouldn’t make Emacs easier to use. If it’s easy to use, it general isn’t much use as a real tool as opposed to a simple-minded notebook application.

  • It was easy to click on the link and watch the screencast, but then I decided I wanted to at least look at the code for the thing. And realized that I wouldn’t be offered a simple button to click to get the code or even to browse it. I’d need to get to know the program git a little better. Which is fine, because I think you need to know about version control if you’re going to do anything meaningful related to computers, and it’s on my list anyway.

    But there was a lot more interesting stuff at that website, and I hope to explore it some more once I figure out how to use git and what exactly I’d be looking at. Just some guy, Seong-Kook Shin, who presumably is interested in getting things done with the computer and with Emacs.

If you’re interested in more about the code and the guy, you’ll have to be interested enough to have already read this far, to have a real interest in it, and the willingness to learn how to do it all and what to make of it. I hope I’ll get there soon, myself.

Posted in Emacs | Leave a comment

More resources for learning Python

I keep turning up more stuff; some better than others. This is just a list of the most recent ones:

  • DaniWeb Python Forum. Haven’t explored this much yet, but it looks like a reasonable starting point.
  • Learn Python the Hard Way Exercise 17 Extra Question(s), a thread from StackOverflow.com about answers to exercise 17 in Zed Shaw’s book on Python. Not necessarily the best resource, but it’s a resource with other programmers who are trying to give good answers.
  • Tutorial on Python Modules from TutorialsPoint.com. The rest of the Python tutorials could be pretty useful, if only as a quick reference: on the pages I’ve seen so far, there appears to be clear statements/definitions of terms, plus EXAMPLES! That’s good. Look forward to using this one more.
Posted in learning to program, Python | Leave a comment

More Emacs Stuff

I’ve been diving back into Emacs recently, since discovering that there’s a really useful implementation for Mac OS X, Aquamacs, that not only does all the Emacs-y things I fell in love with so many years ago, but also manages to work nicely on OS X. Especially appealing are the use of tabs for multiple open files/buffers, the distraction-free full-screen mode, and integration with Apple hot-keys (Command-S will save a file, while Command-, brings up the old-school Emacs-style configuration options in a new buffer.

A list of Emacs/Aquamacs/Emacs on Mac OS X resources and articles:

  • EmacsWiki has plenty of good stuff, including plenty of glossary information, given that Emacs terminology was developed prior to most current software, and there are as a result plenty of familiar-looking things with odd names (e.g., buffer instead of file, kill instead of delete and point instead of cursor position).
  • Here’s a nice overview of Emacs on Mac OS X Leopard key bindings from Stackoverflow.com.
  • Also relevant to my interests: Emacs on OS X list (link to the archives on GMANE.org).
  • Coming Home to Emacs is lovely essay about how a programmer rediscovered Emacs, with a respectful discussion of the Vi vs Emacs controversy.
  • There are lots of lists of “Important Emacs Keybindings”, like this one, Basic Emacs Editor Commands, from the Colorado State University CS department. Though apparently written in 1998, it’s still pretty helpful for starters.
  • Here’s another one that I wouldn’t call outstanding but it is helpful: Emacs Reference. It did point me to an interesting resource for cheat cheats, listed next.
  • Geek Cheat sells t-shirts and coffee mugs with Emacs (and Vi) cheat sheets printed on them, like this large one for Emacs. Handy. A quick Google found this fancy color one from Zazzle.com. Who knew? I long ago lost my O’Reilly Emacs cheat sheet, but coffee mugs, those I hold onto.
  • I (now) know that XEmacs is a fork of GNU Emacs, but it’s pretty close and the tutorials on indentation and keybindings have been helpful to me as a beginner. It’s always good to have an alternative resource for documentation (especially considering how unusable I’ve always found the official GNU Emacs doc to be).
  • Speaking of GNU Emacs, as hard as it may be for me to grok the doc, it’s still the primary resource. So, I’ve been grappling with the writeups on Saving Emacs Sessions and Customized Key Bindings, among others. You can’t approach it as an exercise in reading, more like an exercise in programming when you read them.
Posted in Editors, Emacs | Leave a comment

Man as Industrial Palace

Der Mensch als Industriepalast [Man as Industrial Palace], a poster by Fritz Kahn.

Amazing the degree to which this single image has resonated (and continues to resonate) in our culture. The image is part of the Dream Anatomy website published by the U.S. National Library of Medicine.

A nice video with closeups of the original, and another that animates it, by Henning Lederer, who is working on a full-blown interactive app based on the poster.

Posted in Education, Interesting Stuff, Our World | Leave a comment

Dropbox and Cloud-related applications

Dropbox is not the first network application for storing your data in the “cloud”–that’s been relatively easy to do for decades, using UNIX networking tools–but it does seem to be the first to gain much traction outside the *NIX sysadmin cohort.

With Dropbox I can stick working files in a networked folder that I can access from any of my computers, from networked devices like my iPod, or from any connected computer via the web; it’s great, and I don’t need to go into the details here. Reddit came up with an amusing post about Dropbox, Why is Dropbox more popular than other tools with similar functionality? – Hilarious answer, which also links to some more useful (and some amusing) items.

But I have been stumbling across interesting articles about how to use Dropbox, or how to recreate a Dropbox-like setup on your own, or Dropbox-like applications that might be worth looking into. Here they are:

Right now, Dropbox seems to be the flavor of the month for cloud storage. It’s funny, because this kind of application should have been flourishing for at least a decade by now–especially since Microsoft and Apple and many other companies have tried offering something like it for a long time. The biggest problems with these kind of services are:

  • consumer acceptance of having someone else in control of access to their data
  • concerns over privacy of that data
  • concerns over whether or not the provider will still be in business next week/month/year

Time will tell.

Posted in interesting applications, Office Productivity, Utilities | Leave a comment