Showing posts with label Python 3. Show all posts
Showing posts with label Python 3. Show all posts

Tuesday, September 16, 2014

R, S, T, and other programming languages not generally spoken of in polite circles

I suppose I know a thing or two about the care and feeding of a blog. After 124 posts, I know a little, anyways- this blog has been read on six continents (over 40 countries!). One of the little things I think I know is that a blog post should try to have a clever title, a "hook". The content, of course, should also be interesting, or at least relevant. I've written a few pieces which I consider absolutely golden, and then there have been a few that were just plain... meh.

Today's title, though, explodes the bounds of known civility: of the folks who visit my blog, I believe only my good e-buddy Dr. Lee Baker will have the foggiest notions of what R, S and T are about (by the way- if you DO know anything about these languages, drop a comment and I'll be happy to give you and/or your website or firm bit of free web publicity).

As for me, well... I've actually got a copy of R of one of the PCs in the Secret Underground Lair. I've done about as much with it as I have with MySQL, which is to say, not much. R is a derivative, successor, or just plain newer version of S... seriously, I'm not making this up. T, however, is the oddball in this group. As I as thinking of a topic involving programming languages, I thought to myself, "Wouldn't it be an absolute hoot if there was a T programming language?" Well, be careful what you wish for- T is out there, it's pretty obscure, but it really does exist. Depending on your source, it's either an implementation of the Scheme language or Lisp.

The reason all of this is here is because I'm trying to get back into programming. I mean, part of my job title is "programmer", but what we typically do falls more into layout than anything, in most cases. And, being that the software utilized is expensive, it's out of the reach of "normal" humans, it's not just something one goes out and buys and gets good at. How expensive is it? Well, one could purchase several stand-alone copies of Adobe's CS6 for the same price as one license of what we use. So, I'm looking at a few languages that have a common characteristic, namely price. Of course, that price is FREE.

For those non-geeks out there, there is a plethora of high-quality software available- robust, well-supported and developed, and used in every sort of business, educational and scientific endeavor. R is one of these languages. I'm not sure that I'll ever use it, but it's on my radar. The language at the top of my list is Python- I hope to collaborate a bit with Mr. T in the near future on a Python project. Perl is also on my list, as well as JavaScript and Visual Basic.    

And there you have it- I'm on record and on the hook now to start working on one of these languages.

On the data front, my Access form is partially rebuilt- I hope to have that up and running soon.

That's it- it's nearly 0600 local (GMT-5)

As always, I am hochspeyer, blogging data analysis and management so you don't have to.


June 5, 2016 update: this was originally published on Sep 16, 2014, and is one of the 1st of what I hope to be an occasional series of blog updates- microblogs, I suppose.

Where am I at? Well, in case you missed it, the database had a catastrophic hardware failure, and it was not backed up. I'm still pretty much at "Hello, world" with Python 3, and although my analytical skill are vastly improved, my practical programming experience at work is only modestly improved.

On a sad note, Meerkat suffered her FOURTH flat in just over four years today. Fortunately, we carry one of those all-in-one emergency devices: air pump, jumper, lights and USB power supply.  I know EXACTLY where and when it happened. There is absolutely no way I can avoid the tollway construction, and it is the cause of two of the flats.

Meerkat receiving CPR (Car Pneumatic Resupply)
As always, I am hochspeyer, blogging data analysis and management so you don't have to.

Saturday, December 21, 2013

On programming (#hourofcode continued)

I am a programmer by trade. My training is ongoing, as is appropriate with any craft. What I do on the job, though, is only a part of my craft.

For nearly a year, I've been in search of the "perfect" programming language to learn. My requirements for this language are fairly simple: I need to be able to learn it on my own time, on my own schedule and at minimal cost. Considering the day and age in which we live, these are pretty simple and easily met. The problem I've encountered, though, is that many languages will fit my criteria, and I think I need to have a few under my belt. The huge problem is: where to start?

HTML is a pretty obvious choice, and I've dabbled in it a bit. The problem is that it is pretty much limited (!) to the Web, and I am in need of something a bit more general purpose in nature. With the advent of the Raspberry Pi, Python has become a strong contender for me, and as I have an interest in this device, Python seems to be the way to go. So, where is Python?

In a word: everywhere! I have it installed on nearly every PC I use on a regular basis, and although I'm not much past the very basics of the language (think: print("hello") ), I've made it a priority to at least touch it every day, if not actually learn something.

The past week has been a bit of a wash as far as Python goes.  The main reason for this is because I am once again gainfully employed as an employee rather than a contractor or temp.This makes me happy- yay! However, as an employee, I feel the need to increase my value to my employer, and to this end, I will ensure that I do some programming on my own time.

In the wonderful world of data, I came up with one more improvement to one of the tables which should fix a data synchronization issue. More on that after it is implemented.

As always, I am hochspeyer, blogging data analysis and management so you don't have to.

Monday, December 16, 2013

Darth Anna, Defiler of Planets

The HVAC in our office is challenged. That is the most polite thing I can say about it. You're probably wondering how my meek coworker from Russia came to be Darth Anna, Defiler of Planets and Mistress of the Dual Tailed Optical Mouse and Yours Truly became Darth Chris, Consumer of Comets and Sneezer of Asteroid Belts.

HVAC is industry shorthand for Heating Ventilation and Air Conditioning. So, in other words, when it should be hot in the office, its cold. And when it should be cold, its hot in our office. Please note: I'm using EXTREMELY polite terms as I prattle on about our HVAC.

The rumor that's been going around for some time is this: when the office was first designed, the air conditioner that was ordered was too large (powerful) for the size of the office. Consequently, a vicious, rapid cycle of heating and cooling is the norm. Adding insult to injury, the thermostat used to be located directly under a vent in the ceiling. I'm not an HVAC expert, so I don't know the purpose of the vent. All I do know is that cold air generally wafted down from it, onto the thermostat, adding more drama to the hot cold cycle. At some point in 2012, the thermostat was moved to a more central part of the office, and even though there is a remarkable improvement, Anna and I still don and remove our hoodies several times each night... and when I say "don our hoodies", I mean deploy the hoods as well. Hence, we look like a pair of dark Jedi acolytes.

So, how did the #hourofcode go? I had hoped to start programming on a Raspberry Pi last week, but the Pi I ordered may not arrive until after Christmas. I finally gave up and installed Python on Jennifer's PC, and took the plunge this morning. I found a very nice tutorial on daniweb  which I highly recommend to anyone interested in programming in Python.

Not much news on the database front. I was at the gym yesterday and as I was updating my training log, I got to thinking about 'average' and 'mean' numbers, and how I cannot do averages for walking times, as my phone's stopwatch doesn't really store lap data... my log entries are confined to total laps, total time, fastest and slowest laps. So, I'm pretty sure I understand 'mean', and I think it's how I will quantify things. Here's a site that does a pretty technical job of explaining average vs mean.

As always, I am hochspeyer, blogging data analysis and management so you don't have to.

Thursday, December 12, 2013

Hows that #hourofcode coming?

Unfortunately for me, not so well.

It all started last Friday for me. I had mentioned in a previous post that I wanted to try my hand at Python. I've been doing some research over the past month, and had decided that the best way to get my Python education going ( after downloading my free copy of Python 3.3.3) would be to put Python on a dedicated platform- not a problem there, as I have a spare PC that can be utilized for the task. However, as Mr. T is still at home and being homeschooled (and has an interest in this sort of thing), I decided to tackle  Python and Linux simultaneously, so I went online and ordered a Raspberry Pi for each of us. During my research, I found one author who was a big fan of the Linux Gentoo distro; he said it worked quite well on the Pi. And, as Mr T. waxes long and eloquently about Gentoo but has yet to install it, I figured this would be the perfect opportunity to get our son into another programming opportunity.

However, the plan didn't quite come together as I'd hoped. I went to a vendor listed on the Pi website and placed my order for two units. This was my first time using this vendor, though, and I apparently did something incorrectly, for even though I had originally ordered a quantity of two, when my pending purchase order was displayed, there was only one. Not a problem- there was a chat-based customer service representative (CSR) available. It took around forty-five minutes, but the CSR assured me that my order was fixed. My order was fixed, but I found out on Wednesday that my order was now on backorder, and might ship on the 23rd of December. So my plan to have Pi for the #hourofcode has been thwarted. Alas and alack!

In the interim, I'm also planning and plotting about the impending Windows XP EOL. I have three machines that are impacted by this, and I honestly haven't decided what to do about them. One is almost certainly going to become a Win7 box, and the second may become a Linux box. I'm not sure about the remaining one. One option is to keep of them as XP machines, but take them offline and use them for games or things which don't require connectivity to the world.

In other news, both the car and the truck have been to the shop this week for needed repairs, and when all of the hours were added up, there was no time for data! I'm hoping this (data) situation changes soon. I'm getting excited about working with Python- I hear it is contending with and in some areas displacing R for statistical work.

Lastly, a bit of blog news: as 2013 comes to a close, the blog has now been viewed in at least thirty-seven countries- Belarus is the latest!

As always, I am hochspeyer, blogging data analysis and management so you don't have to.

Monday, November 25, 2013

It was decaf. I swear it was decaf.

I was sitting here, listening to Pat Benetar while Python 3.3.3 downloaded, and it occurred to me that a cup of tea would be nice. The previous cup was indeed normal black tea, and as the hour was fairly late (2200), I made sure the next one was decaf- most manufacturers seem to go to great lengths to differentiate their packaging when marketing a decaf beverage. Not this manufacturer. In their defense, the box is clearly labeled "decaffeinated", but in all other respects the regular and decaf packages look identical.

So @0153, here I sit.

Actually, though, its not as bad as it sounds. I went in to work at 2330 Saturday night, and did not leave until 1100 on Sunday. Yep, I spent three days pretty much of working at a furious pace just to stay ahead of the presses. And this reminds me of a little I.T. anecdote.

At some time in the fog-shrouded past, we all knew someone like this. In fact, you may know someone like this today. This is the person that you always dread telling, "Whatever you do, please don't touch the red button," because you know that they will not let go of the thought of pushing the red button. It will tug at their sleeves, nip at their heels and gnaw at them until, one day- when no one is looking- they push the button.

And it goes- almost without saying- that you will not be there to yell in dramatic slow motion "STOP". When you find out about it, it will be too late. As Foreigner sang, "The Damage Is Done".

Yes, someone could not resist the equivalent of the red button- they loaded files from a folder named "OLD". And, undoubtedly they pictured themselves as the anti-hero of a Michael Bay blockbuster, hitting the load button and then turning and casually walking away while lighting a cigarette as presses explode one by one in slow motion behind him. Who does that? It's unimportant. I was told about it, and so a dozen files had to be recreated. To ensure this didn't happen again, I put the OLD folder into a folder I named, "These are not the files you are looking for" and then put that package into yet another folder which I named, "OLD DO NOT USE". And so, the problem was fixed.

Almost. The same junior genius that tried to load a bad file also copied it over a good one, which meant that those dozen files had just been created a few days prior had to be discarded and re-recompiled. On the plus side, no time or production was lost, as they were able to skip to the next file.

So its been a busy week, and I'm trying to be diligent and get this published, but between the work schedule, the Thanksgiving holiday and Jennifer (and Mr. T) being out of town, this poor blog has just been sitting here collecting virtual dust. I'm happy to report that it appears my Python download was successful. I've been working a bit on Jennifer's PC, among other things cleaning up her Media Player library. Only a little bit of progress to report on the database, but I should have the opportunity to do more work on that this weekend.

That's all the news from the Secret Underground Lair (remote). Until next time, I am hochspeyer, blogging data analysis and management so you don't have to.