FeedSpider Dev Blog: Enyo, Cordova, and Android

So, yesterday, I finally went and did it. I fired up a Cordova project, dropped the FeedSpider code into it with zero changes, compiled the thing and set it running. And it worked!

Well mostly.

The stuff that I expected to break broke: sharing, notifications, and OAuth. But, those are the things that are platform-specific that I haven’t written for Android yet.

So, on with the screenshots!

FeedSpiderFeedSpider 2 FeedSpider3Android, Cordova, and Enyo play pretty nice together, don’t they? So, what will it take to make this work and get it ready for the Google Play store?

  1. A splashscreen.
  2. An upgrade to Enyo 2.5.1.1.
  3. A rewrite of some of the core components of FeedSpider into pure Enyo 2, getting rid of prototype.js entirely.
  4. Implementing the platform-specific features.
  5. A facelift. The Onyx look is starting to look a little dated, but it’s easily re-skinnable to a material design look.

As always, I’ll post updates as I go. It’s nice to be getting back into FeedSpider!

A crash course in Python

Sometimes, you just need to figure out what you can do with the tools that you have available to you.

The situation: I have to check the status of a site that is on a server that I don’t control, and take various alert actions depending on specified parameters.

The tools that I have: a Linux server that I can reasonably assume to be up and available more often than the site that I’m checking on.

The fun part about this is that normally I would write a little PowerShell script, (or VBScript if I could not guarantee the presence of PowerShell) or a C# app and run it off of a Windows server. But, I don’t have a Windows server. So, that means looking for other options:

  1. Bash scripting – looked into this, unfortunately what I need to do is a little to complicated for Bash.
  2. Python scripting – much more powerful, and a reasonably familiar syntax. Yes! Lets do this!

So with the help of Google and Stack Overflow, I took a day and took a crash course in Python. I was able to set everything up to check the website, email if it met certain parameters, SMS me using Twilio if it met other parameters, and call me if there was a critical failure. All in all, not bad for what amounts to a quick and dirty script.

I’ve learned that I like working with Python, especially considering how many libraries are available for it, and will definitely consider using it for my next project. Especially if it’s something that needs to work cross-platform.

Pimping an HP MicroServer

A couple of weeks ago, I got a new toy to play with for the office – an HP ProLiant MicroServer Gen 8! Since then, I’ve been collecting parts and working on getting it ready. It will replace our existing file server, take over virtualization duties, and should be able to handle just about anything else that we throw at it.

c03760147HP released these last summer, in a variety of configurations, and they are perfect for home and small business use. I had looked at the Gen7 version of these previously, and while perfect as a small business server, the weak processor and max of 8 GB of RAM meant that it would not be a very good VM host. This version, however, supports 16GB of RAM, and has an upgradable processor.

I started with the base version of the server available from NewEgg, which has 2 GB of RAM, a Pentium G2020T 2.5GHz (Dual Core Processor), and no hard drives or optical drives. (In hindsight, I should have gone for the Celeron version and saved $70, considering what I wound up doing). A little weak to start with, but an excellent base to build on.

The original plan was to upgrade to 16GB of RAM and add four 3TB drives to to create a 12TB storage pool. The Pentium processor was capable of virtualization, if a little weak, as it only had 2 cores and no hyperthreading, but it would have to do.

So, that’s what I started off with. I added the four 3TB Seagate Red hard drives and went to install Windows Server 2012 R2 Essentials on the server. Unfortunately, I ran into a big problem: The automatic provisioning tool did not want to format the drive as GPT, so Windows couldn’t take advantage of the full 3TB. So, my only option was to install Windows manually. After some reflection and further research, I decided to do what many others had done with this server and picked up an SSD to run as my system drive.

This, of course, caused another problem. HP, in their infinite wisdom, decided to use a 9.5mm super slim optical drive bay instead of the more typical 12.7mm slim optical drive bay. This along with the use of a 4-pin, floppy-like power connector meant that dropping an adapter tray in there was right out. Fortunately, just under the optical drive bay, there was something that plugged into a standard molex connector that could be tapped into, and there was an open SATA port on the motherboard that I could use. This meant that I could use a splitter, a SATA cable, and a zap strap and secure the hard drive in like so:

2014-01-29 19.45.33With the new system drive installed, I pulled the other 4 out so that they would not interfere with the installation and installed Windows. Everything went smoothly, so I shut down the system and popped the other 4 drives back in. After that, the system wouldn’t boot.

It turns out that the MicroServer’s BIOS will not let you specify the boot order of the hard drives, so it will always attempt to boot off the drive in slot 1. Fortunately, however, it also has an internal MicroSD slot (and internal USB port), which is considered by the BIOS to be a USB drive for the purposes of booting. This means that the bootloader can be moved to a flash drive or MicroSD Card, and that set as the first boot option, to keep it off the storage drives. TheBiggerMan over on the HomeServerShow forums put together an excellent tutorial.

With the system booting again, and after disabling the RAID controller, I set up the 3TB drives as a storage pool with parity in Windows, giving me a 12 TB storage array. This left only one thing left to do: upgrade the processor. After purchasing the server, I did some additional reading and learned that the processor can be successfully upgraded to a Xeon E3-1230V2. This removes the limitation of a weak processor, replacing the Dual-Core (non-hyperthreading) 2.5GHz Pentium with a Quad-Core hyperthreading 3.3 GHz Xeon – much better for virtualization!

The processor install went smoothly, and, with that, the build was done, leaving us with a pimped out MicroServer with a 3.3 GHz Xeon Processor, 16GB of RAM, a 12 TB storage array that will survive the failure of one drive, and a 256GB Samsung SSD as a boot drive – a pretty nice upgrade when all is said and done! Right now, it’s sitting under my desk copying files off the old server – soon it will be ready to replace it.

Happy 30th Anniversary to the Macintosh and a new version of FeedSpider

Just a short post today. I plan to have some longer stuff about some work that I did repairing a SystemSaver IIGS and Pimping an HP Microserver up soon.

First, a shoutout to Apple – happy 30th anniversary to the Macintosh. I’m composing this post on a Macbook Pro, and hope to continue using Macs for years to come (as long as they don’t turn into oversized iPads). If you haven’t heard about it already, don’t forget to pick up a copy of the 30th Anniversary Macintosh Icon font that Apple snuck into the 30th anniversary website as an easter egg (via OSXDaily).

Second, there’s a new version of FeedSpider available from the feed at http://feedspider.net/packages. This version adds support for AOL Reader, Feedly’s mixes API, and the Fresh and Archived feeds in TT-RSS. I’ve submitted it to the App Catalog, so it should hopefully be approved before too long.

Moving forward

While I enjoy retrocomputing and developing for dead recently resurrected operating systems, my day job has me working with technology that is significantly more cutting edge, and fun and interesting in it’s own way. While I’ve been working with the tech all the way through, I’ve been bad about keeping up with certifications. So, one of my resolutions for 2014 is to get my certs up to date, from the Windows Server 2003 MCSE and Windows Vista MCITP level to the Windows 8 MCSA and Windows Server 2012 MCSE level.

Fortunately, since I’m already in the system, I just need to study for and write the upgrade exams. It also means that I have to hit the intermediate steps as well. So, as a first step, I wrote and passed the Windows 7 upgrade exam last week, getting me my Windows 7 MCSA. Next up, Windows Server 2008, and a large textbook order from Amazon.

MCSA_2013(rgb)_1481

My company also applied for and received entrance into the Microsoft BizSpark program for startups, on the strength of another project that I am working on, so that’s another thing that I’m excited about and can reveal more about when it’s closer to ready.

BizSpark_Startup

One other thing – after much frustration with the lack of updates to the HP app catalog, I put together a Preware feed and a shiny new website for FeedSpider. So, the latest version (1.1.3) is available for download from feedspider.net. It adds the following features over the current version on the app catalog:

  • Support for BazQux Reader, Feedly, and Tiny Tiny RSS
  • A new JSON parser that won’t choke on certain feeds.
  • The usual set of bugfixes and optimizations.