Archive for the ‘ Programming and Hacks ’ Category

Microsoft’s On{x}

 landingPage So, Microsoft, seemingly out of the blue, released On{x} for, of all things, Android phones.  Why not windows Phone?  Who knows, probably a compatibility issue.  It works out for me since I have and prefer android.  But what is it?  It’s basically a simple way to automate tasks on your phone via Java.  The example recipies are things like “Text my spouse when I leave work”, or “show me the weather if it’s going to be cold”.

The possibilities here are pretty cool, even with just the recipes.  For example, the sample recipes exactly is: “Text my wife "I’m on my way" when I leave work”.  Each of the underlined sections are variables which can be modified.  So, as an example, I could change “My Wife” to something else, my mother, my kids, Twitter’s SMS number.  “I’m on my Way” could also become something else, “I’m coming home”, “I’m at work”, “I’m at the school”.

Leave is interchangeable with Arrive, and the destination can be changed as well, based on GPS coordinates (I’m assuming it works off of approximations).

So, if i picked up my kids after school, I could set this up to text my kids “I’m waiting outside the school”, when I arrive at the school to pick them up.  If I want to be really clever, I could set it up to post to Twitter when I do various things.

Which is what I may attempt to do.  I like things like Foursquare or GetGlue, but I kind of hate being spammish so I don’t use them as much as I could.  What i like is tracking things for my own future use.  I’ve been considering for a while, setting up a “dumping ground” Twitter for this sort of thing.  Every Foursquare, Raptr, GetGlue, update.  I’m sure there is a way to push Last.fm to Twitter.  I’m sure there is a way to get this on{X} to tweet when I get to work, when I get home, every time i visit Wal-Mart or Target on a toy hunt, etc.

This sort of data no one really cares about, except myself.

Learning Python with Udacity

udacity_cs101

Just a note, this is not any sort of advertisement…

So I know some basic programming syntax, generally centered around C and C++ which I learned in college.  The C was through several Engineering based classes and the C++ was from a single Computer Science course I took when I had a semester to fill before transferring schools and didn’t want to completely lapse on the studying, schooling lifestyle.  I also know how to code HTML but that is barely programming by any stretch. 

I have tried various self taught methods to teach myself more C++ and some Java with little success.  I have some books to make Android apps but I have yet to get anywhere with them.  Then, I believe through the Windows Weekly podcast, I found out about this deal called Udacity. The first course offering is to learn how to code a basic Search Engine using Python.  I’ve found it pretty well designed though a handful of the examples were a little too abstract to be meaningful (I’m looking at the one about cost and RAM and memory and compute cycles which I still don’t understand).

Anyway, I’m done three out of the seven modules and I’m rather proud of the fact that I’ve actually managed to stick with it and learn some things.  I’ve got a little script now that I could use to extract links from any webpage or even a number of webpages, though right now all I know how to do is display them.  Presumably we’ll learn how to compile them into some sort of file or database.  My biggest hurdle really is I keep wanting to use C and C++ syntax.  Things like adding ; at the end of lines or 1++ or variable++.

It’s not a terrible problem really.

Windows 8 and Raspberry Pi

So, just to start off, before anyone gets the wrong idea, this is not about Raspberry Pi running windows 8 or anything.  It is some discussion on two recently released technologies and actually amounts to “Two Blog Posts One entry”.

Raspberry Pi

Register here to express an interest in Raspberry Pi-001052The other night, as Midnight at the start of February 29th my time to be precise, Rasbperry Pi announced the launch of their product.  Rasberry Pi is a charity/non profit producing extremely cheap and small and basic design computers.  This is an ARM processor, like you’d see in a tablet, with 256mb or so of flash memory on a board the size of a credit card.  It has USB inputs, a power socket, an Ethernet jack, which is the largest component on the thing as near as I can tell, and an HDMI out.

It also costs somewhere in the ballpark of $35.

I really wanted to try to get one.  There are any number of projects you could use it for from a small media box, to a small dedicated emulator box to whatever.  I have read some suggestions over on /g/ that it’s not as capable as it’s touted but I didn’t read the entire thread so they may have been referring to some alternative product or something.   Still, for $35 it seemed like a neat experimental toy.

Sadly, the initial run was only 10,000 and as near as I can tell, it was UK exclusive.  It also had enormous demand, both retailers offering it essentially had their websites completely crash.  Neither seemed to be willing to ship over seas, or at least, to the US.  I gave up after about a half hour of just trying to get the page to load. 

I’m not upset about it, I’m sure it’ll be put out somewhere locally within the next few months.

Windows 8 Consumer Preview

win8installWhen Windows 7 came out, I tried out the preview/beta of that too.  I may have gone as far to install that on a spare laptop.  At this point I’m just using Windows 8 in a Virtual Machine using Virtual Box.  There were a few issues but I found a simple fix here.  The fix was that, by default, “Enable PAE/NX” was not selected.

Simple.

So I loaded it up.  It detected the virtual network connection perfectly, which is great because Windows 8 has all sorts of neat online integration.  The best analogy I can give is to any Smartphone with Android or iOS (I assume, never used iOS), and presumably, Windows Phone 7.

For example, my sign in, is my Live account.  I don’t use my Live email for anything so that’s not too exciting but when I entered my Google account into it, it picked up my contacts, it picked up my email, it picked up my Calendar.  Everything. 

This is very excellent.  I went through a lot of work a few years ago making sure everything was consolidated and would sync properly via my Google account, Android has already made it worth it, this is just Icing on the Cake.  It’s too bad that my corporate employer would freak if I tried to push all of my emails to my Google account the way I did at my old employer, because I’d have everything all in one place once again.

Ah well, I barely get any email at work worth reading anyway.

Anyway, some interesting aspects.  There is some interesting X-Box live integration going on.  I’ll need to investigate earlier, but as near as I can tell, “Games for Windows Live” is just becoming X-Box Live.  There also seems to be some marketplace sharing involving the games on X-Box Live, and I’ve heard a rumor of Windows 8 supporting playing 360 games.  This is all speculation and I have some other speculation I may get to related to this in a later entry.

win8solitairI tried out Solitaire, because it’s simple and free.  Interestingly, it shows up now in my GFWL online account.  I actually have always been kind of jealous of the whole X-Box live ecosystem.  Steam is great but they have zero Social going on.  Hell you can’t even make a Steam Badge without using some third party.

The Solitaire game ran extremely slowly though, which was disturbing.  I didn’t have any sort of graphical acceleration enabled on the VM, something I fixed later, so I may have to try again to see if that was related.  On the other hand, needing a 3D card to run Solitaire is very much in the camp of “Really Fucking Lame”.

Anyway, I will need to use  it more and throw some third party stuff at it like Steam and Chrome to make a better judgment overall.  I will say, I like Metro way more than I expected.  It needs some tweaks to work better with a mouse though.  It’s like, it wants Gestures that I can’t give it.  Also, the pop out menus are confusing but only because I’m not used to them and how to work them.  Also related, I’m not sure how well those pop out menus will work in a touch interface either.

There is a basic desktop but the lack of a normal Start Menu and it feeling like it’s basically just an “application” and not the base of everything disturbs me slightly.  Other applications I have running do not appear on the desktop Taskbar, as an example, it’s all still on the left hand side pop out task window thingy.  I suppose that doesn’t make any sense if you have not used Windows 8, but basically, mouse over to the left side and a thing pops out with thumbnails of everything running.

I am not sure I like this system, because nothing has a clear “close this” option and it is very easy to get a whole pile of crap running stacked up in the background.

I guess to close up I’ll just say, I do like Metro, but I think this combo Metro/Desktop idea they are pushing, may be a completely shit idea.  Give people one or the other.  On the other hand, if I can get a beefy Windows 8 tablet with a dock that turns it into a Desktop system, that could be great.  I just lack confidence that a Windows 8 Tablet will be able to run say, Team Fortress 2 or even World of Warcraft with any sort of decency.  Basically, the gamer in me, hates this.  It’s the same reason I don’t use Ubuntu full time.  I like it, it’s neat, on a basic level it’s more than functional.  It completely falls apart for any real games.  Yeah, yeah, “use a console for that” but why the hell would you ever use a controller for FPS games.  Or any game that’s not a platformer for that matter.  Don’t even get me started on Touch for games….

Procrastination Isn’t Always Bad

I almost always have a couple of dozen projects I’m working on.  These are not projects for work or even household projects that my wife wants me to take care of.  These are personal projects of varying importance though generally of little overall *real* importance.  For example, at the moment I am working on:

- Building a solid automated online streaming radio service.

- Playing through several video games.

- Burning old family VHS tapes to DVDs

- Building a small corner shelf for putting my games and DVDs on in the bedroom to reduce the clutter in the closet.

- Repairing several laptops i have that don’t work.

Etc…

Anyway, Several of these projects I’m “working on” are continual, like playing through various games.  Others I have not even started on, though I still would say I’m “working on them”.  Some I may never start.  The point is that I tend to think about a large string of projects in the back of my mind almost constantly.

Often when i have “free time” I do something completely different when I should be doing “a project”.  I have a tendency to procrastinate on these things.  Often this procrastination though is good because inevitably, I get an epiphany on some project that makes it extremely simple and quick and it’s the best possible solution.

The latest example, which inspired this rambling blog post involves my home network.  It’s not huge but it is larger than most people’s home networks and it “evolves” much more than most people’s home networks.  Currently, the phone line feeds the cable box thing (we’ll call this the Residential Gateway or RG for lack of  better term though I’m not sure it’s actually accurate).  It comes out of the RG and feeds a router.  This router was put in by the cable guy when he came out to replace the RG when it broke.  The thing is, he left the old router in place (also provided by the phone company).  This initially created some issues since it gave me two IP address sets which is annoying when you’re doing a lot of NAT translations for things like streaming radio and VNC access to half a dozen machines as well as hosting FTP, HTTP, etc.  I also own a switch and a hub, though I don’t use the Hub because "hubs suck”. 

I lived with forwarding all ports to the internal router for a while but inevitably I swapped the Hub for the switched, changed the IPs of all my machines and rebuilt the NAT table.  it was a one time pain but it makes things simpler.

I put the old router aside until I discovered the the new router does not support the older less secure Wireless protocols that my Nintendo DS requires.  So the old router went back in almost exclusively for use of the NDS, whoes IP address I don’t care about.  It also serves as an access point for guests or whatever to keep them off of the main network.

The issue I had recently however involves a remote location in the house in my wife’s office.  She has a PC out there for “office use” and I put a second PC out there recently with a KVM for my “experimenting etc” use.  Currently it hosts Lameazoid Radio, an OpenSIM server, a session of Outlook that is attached to archives of all of my old email PST files and I use it for downloading Torrents.  The main point is, it creates a lot of network traffic.  The problem is, there’s only one physical cable running to the office and running a second one would be a pain.  the obvious answer is, put in a switch.  I could use the hub but I fear the high traffic of the one machine would cause lots of issues for the office computer and visa versa.

I’d pretty much resolved myself that I can afford a 30 dollar switch to throw out there.  The problem is that i just got off of a huge backup with my “personal budget” from buying several expensive items “in advance” and then paying back the budget.  I’m tired of being broke for the past 2 months on my personal budget.  Also, Black Friday is coming up and I intend to have a chunk of change to spend on good deals.

So I can drop money and be short on BF, or i can wait a few weeks and listen to my wife occasionally complain that the office PC doesn’t have internet access.  So I decided to “sit on” or procrastinate this project.

Then I had the epiphany.  I can move the main Router over to where the switch is now and swap them out.  The only thing plugged into the main router besides the long network cable running across the room tot he switch is an old laptop I was trying to project but i can’t keep running anyway.  It can be dropped.  I was going to plug a media center PC into it for Hulu but Netflix on the Wii eliminates the need for that and I already have a long cable running back to the TV area from before the newer Router was there anyway I can use.

The point is, that I don’t NEED it to be where it is.  Then I get my switch back.

The real point is, because I didn’t rush into putting in the hub or rush out to buy a switch, i came up with the best solution AND it doesn’t cost me anything. I do this a lot.  I did it at my old job all the time.   I’d sit on a project until I’d realize I can combine two obsolete items into something useful or whatever.  The point is, sometimes it’s good to procrastinate.

One of My More Fruitless Projects…

If I earned a nickel for everything I’ve ever created that no one else cares about I’d probably be about to earn another nickel with this next post.

Anyway, one of my many pet projects has been setting up a private internet radio stream.  I actually toyed with the idea for a bit of building a small FM transmitter and going full on Pirate Radio but I decided that the current state of media doesn’t necessitate the need for radio waves when the internet is right there just waiting with a much broader reach.  The real issue is that it mostly just reaches me.

The nice part is, I don’t really mind.

I plan to put up a little page for Lameazoid Radio, but I’m still fleshing out the details.  A few people know the URL of the stream (hint: stream DOT) but I have no idea if they remember it and I doubt anyone listens.  I suppose the question is, why would anyone want to listen?  Can’t you get the same thing from your iPod?

This question includes myself.  Wouldn’t it be more beneficial to just load up the iPod and let it rip?  I do have some answer to this.  For example, my iPod isn’t large enough to hold my entire music library if I want it to.  It also is incredibly poor at shuffling music in a meaningful manner.  The Radio Automation software I’m using lets me sort things into nice themed play rotations.  i can interject little funny clips in at intervals as well to help break up the flow. 

I also run a lot of Podcasts.  The problem with using the iPod for Podcasts is that when it’s in my iTunes library, waiting to be played, I feel obligated to listen.  If it’s out of my control and playing on it’s own I can forgive and forget the playout if I miss one or come in partway through and leave early.  It’s expected I guess with radio that I may miss something.  It’s basically a subtle psychological point that works behind the scenes.

Anyway, I’ve managed to work the kinks out of the automated updates on Podcasts which leaves a few other projects that I want to implement on the table. 

First, I need to record some promos.  I want to make a few music based tags and a few others promoting the shows on the stream.  This basically requires time and a microphone.

Second I need to finish fleshing out the lineup.  I want to run new shows 7 days a week at 4 and 7.  I’ve got both slots about half filled now.  I also would like to find another short bit repeating news segment to compliment Tech 5 which plays every hour where there isn’t a show right now.

I also need to come up with something for the over night.  It’s likely no one will ever listen in the overnight so just running music all night is the easiest bet but I do like the idea of having some sort of “programming” there.  I’m thinking of pushing some audiobooks or something for lengthy periods but missing part of an audiobook is worse than missing part of a podcast.  I’m also thinking of compiling together my longform Techno mixes and running those.  Also possible some concerts in order.  Basically I’m looking to run longer blocks of related content in the overnight.

Thirdly i want to add Live Reporting.  I’ve set up Skype on this PC with auto answer for known callers.  This means i can call in and it’ll pick up.  Right now doing this kills the stream audio and it doesn’t return.  I have some software (freeware) that I believe I can use to create a gate that will shut off the stream when a call comes in and then resume it afterwards.  This would mean if I wanted to do “live reporting (to no one) I could call in through Skype on my phone.  Or better yet, if say, the GNR crew wanted to broadcast live they would simply call into the Skype and it would play.  On top of this I want to set up Skype to auto record and possibly auto rotate these short news bits.

Finally, at least on the list now, is to set up an automatic “now playing” Tweet.  I’m not sure the best way to accomplish this yet though the software does support a now playing.txt that is used by Icecast to set the title.  What wil be more likely is I’ll set up timed tweets for the time each show starts, like on @lameazoid.