Busy with life

Written by admin on August 22nd, 2010

Owen is one now, I have a new job (same company), I’m not working on mydeliverylist.com anymore lately … stuff keeps happening. I may return to the website sometime, but due to work, I don’t have easy access to my server anymore and I’m tired of spending time without returns. That was a project that really needs more time than I could regularly expend on it.

My Muse is pointing in a different direction for now. I’m programming up a genetic programming tool and am considering having another go at my masters project… except better. Hint, it involves spiking neural networks and polychronization.

Anyway, I don’t have much time for much of anything lately, so don’t expect much of anything soon.

A software problem in the ViP722 receiver that Dish Network doesn’t want to fix

Written by admin on July 6th, 2010

Subtitle: A way to get $6 off your Dish bill every month

Erin and I have been having a hell of a time with Dish Network lately.  A couple of months ago, our Dish receiver started flaking out.  All sorts of shows would fail to record, old shows would start recording when only new ones should, shows would get caught in an endless loop as though skipping like a record.  We got the receiver replaced and found that the skipping problem improved, turns out that the hard-drive was going bad.  Unfortunately, some of the shows were still failing to record.

Whenever a show failed to record, it showed up in the schedule history as failed due to signal loss.  However, we found that while some shows would fail to record to tv2, we would simultaneously be able to watch tv1.  This got our interest piqued.  The technician came back to check the signal strength and replace various components several times.  We even had the receiver replaced again.  Over the next month or so, we added a cable directly from the satellite to the receiver through the back door…then a cable directly from the receiver to tv2 in an attempt to bypass any possible wiring problems in the house or electronic components.

Now, over time Erin and I had come to the conclusion that there was a specific sequence of events that could force the receiver to not record a show.  And based on this sequence, we’d come to the conclusion that it was most likely a software problem.  These are the arguments that Dish Network folks gave for the problem:

1) There are signal problems, need to replace something in the system – They replaced the LMBs, diplexers, mixers, etc…and eventually bypassed everything with cables through the house.  Not the problem

Me – It seems like a software issue

2) This must be a problem with the receiver – There was a problem with the original receiver which was fixed by replacing it.  The problem with the failed recordings was exhibited on replacement receivers 2 and 3.  The probability of this same exact problem being hardware and being present in 3 receivers is probably astronomical.  Keep in mind that both Dish Network customer service and the local satellite folks claimed that this problem is really weird and they haven’t heard of anything like it that isn’t fixed with component or receiver replacement.  (Yes, grounding can be a problem, but we fixed that last year when we went through Dish problems)

Me – I think it’s software…maybe a combination software/hardware issue

3) The power line driving the receiver must be dirty, or somehow non-standard – House power isn’t always pure and correct.  The only way I had to measure the power was with my multimeter.  Voltage and frequency were dead on.  I don’t know if there were some other strange harmonics or other noise, but given that we have a lot of other electronic equipment hooked into the electric grid that hasn’t fried, I don’t believe our power is that bad.  Additionally, we had our original receiver for about a year before it flaked out.  The 2 replacement receivers started with the problem immediately.

Me – I don’t see how it could be anything but software

4) It could be some weird signal reflection deal from the TV through the HDMI cable – We use component video.  Not the problem.

Ok, we’ve gone through a lot of troubleshooting here and have no way forward with Dish.  When we talk to customer service (level 1, lvl 1 supervisor, advanced tech support, account specialist, etc), they say that the only things they can do are to replace the receiver or request a tech visit.  I’ve been dealing with the local satellite company (Valley Satellite in Decatur AL) directly, they have been very competent and have worked well with us.  Greg, the owner, knows the VP of tech support at EchoStar (Dan) and says he’ll give him a call.  EchoStar develops receivers for Dish.  Dan gives me a call and tells me they are about to make a software update that probably fixes the problem and to hold tight…it should start rolling out that week.  That was a month ago.  The software version number (L627RJ2B-N) hasn’t changed since we first noticed this problem.  (note that I think L627 is the important part of the software version number).  So either Dan was blowing smoke up my ass, or he didn’t know what he was talking about.  Greg tells me that Valley Satellite will be supporting DirecTV soon…hmm…

The one thing that Dish has maintained is that no-one else is experiencing the problem that we have.  Here is the clincher, my in-laws have a Dish 722 receiver setup similar to ours.  We visited over the 4th of July, tested the system, and were able to recreate the same exact issue.  I am convinced that this problem is a software issue.  The problem started very abruptly a couple months ago and has been very repeatable on multiple systems.

So, if you want to get a discount on your Dish Network bill, or if you want to see if you have the same problem, try out the sequence below and see what happens.  If you get it to happen, you should be able to argue your way out of $6 or more from your monthly bill each month until it is fixed.  That is the monthly cost of the DVR service.  If you decide to call Dish Network, please reference a trouble ticket entered on July 4th by Jessica (Operator ID: LWZ) from Advanced Tech Support.  Supposedly if enough people call about the same problem, they might look into fixing it.

If you’ve made it this far, please post a comment if you are having the same problem.

Sequence for failed recording

1) We usually see the problem first thing in the morning.  The receiver usually does a software update check at 3 AM and resets, so you may want to do this before any recordings start…or reset the receiver before you begin if it doesn’t work otherwise.

2) Record 10+ minutes of a show.  We usually just use a half-hour show previously recorded.

3) Set up two 30 minute recordings back-to-back to TV 2.  The recordings don’t have to be on the same channel, just set to record on TV 2.  (e.g. 7:00 Curious George, 7:30 Sid the Science Kid)

4) Prior to the start of the first show, start watching the recorded show on TV 2 so that you are watching it through the start of the first recording. (e.g. start watching a 30 minute show at 6:50)

5) After the first recording has started, turn TV2 off. (including the dish transmission to TV 2.  Don’t just turn the TV off) (e.g. stop watching TV2 at 7:05)

6) Turn TV1 on to watch the previously recorded show prior to the ending of the first recording such that it will finish after recording 2 has begun. (i.e. start watching at 7:25)

If you follow the steps above, when TV 2 is supposed to be recording the second show, you can look in the DVR->Schedule menu, and you will see the recording is stopped for ‘Service Shutoff’.  When the recording “finishes” and you look back at the schedule, it will show that the recording was skipped due to signal loss.

After this point, nothing will record or play on TV 2 unless you go to the TV 2 DVR menu and start an old recording.  Once you start, then stop a recording, live TV will return and programs will record.  If you turn TV 2 back on and just leave it, nothing will be on the screen.  Eventually TV 1 claims to lose signal and it goes through the process of recapturing satellite signal and downloading guide data.  If you do fix TV 2 via the old recording, it will work fine for the rest of the day.

Please help me out here.  I just want to get the problem fixed.  My wife and I have been on the phone numerous times, hung up on, ignored, blown off, etc by Dish Network.  Their customer service representatives have scripts that do not cover any problem out of the ordinary.  I’m a freaking aerospace engineer who knows how to do troubleshooting and problem reporting.  If Dish would give me the system definition documents, schematics and software, I’d find the problem and fix it for them.  Unfortunately things do not work that way.  I’ve sent some of the tech support folks emails with the details, my wife and I have described the problem to a lot of tech support people many times.  Can anyone help?

Workload

Written by admin on March 14th, 2010

High workload makes for low output on the side project.  I’ve been discovering lately just how much bandwidth I have.

Processing payments

Written by admin on March 7th, 2010

I’m in the process of investigating how I could process payments through the website.  I want to make it a quick process for a new restaurant to sign up and be operational on the site.  Of course, I also want to make the participation with my site a low risk.  How payments are processed is a major component to the risk that a company is going to see with signing up.

I figure there are two main methods to payment processing that I can go with.  First is to open a merchant account and receive all payments in my own account.  Then I could turn around and settle the accounts with the restaurants on a 2 or 4 week schedule.  Second is to offer an eBay type of environment where the restaurant can sign up with their own payment processor and I’ll simply host their payment method on my site. 

Either way requires restaurants to even want to sign up.  Hmm.  I need to get it done so that I finish this big experiment.  Let’s say this, if this ends up flopping, I’ll make the mapping feature more visible so that you can see the boundary lines for any restaurant.  That was the original idea anyway.

Unobtrusive Javascript

Written by admin on February 28th, 2010

I’m trying to figure out the best way to create a menu from my database that will be useable with or without Javascript.  After spending some time with the language, massaging it, rubbing its feet, I’m getting a better idea of how I want to use it.  In fact, I’m really glad that I didn’t spend any time on Javascript for quite a while.  I kind of stumbled onto the concept of unobtrusive Javascript.  Basically, I’m trying to figure out how to make the web form for the menu look and function properly before I even think about pull in Javascript to make it snazzier.  Then, once the menu works, I can come back in and make it better for those of us who enjoy the nice things in life.

Programming with a baby

Written by admin on February 21st, 2010

Working in my spare time was no problem 6 months ago.  I had plenty of it.  I’m glad that I made good use of it too, because now that Owen is here, my spare time is not as available.  Now, for instance, I’m typing this blog post with him strapped to my chest.  He doesn’t care, his head is cocked over to the side with little snores coming out periodically.  He’s adorable, I just find my time more constrained than before.

It turns out that Owen really likes computers.  If you set him in front of the laptop, he’ll reach out for it and play with the mousepad or bang on the keys.  We’ve also got a spare mouse lying around that he gets to chew on.  Often times, I can come into our office and turn on youtube and keep him entertained for a while.  He loves watching Sesame Street on youtube.  His favorite tv show so far is Curious George.  He’ll just sit bolt upright and talk back at the tv.  It’s humorous.

Some days, I can sit him in his Winnie the Pooh chair that he loves, give him a toy to play with and program right there on the floor next to him.  I can get  in a good 20 minutes with him where I only have to pause every 45 seconds or so.  Yep, 45 seconds is a long time to work on something when a baby is around.

Otherwise, I’ll get a good amount of work done after everyone’s gone to sleep.  I can usually get about 45 minutes of useful work in before I start nodding off in front of the computer.  Given that he likes to get up at 3:30, I try not to stay up too late.  Otherwise, the lack of sleep will kick my butt.

Software Development

Written by admin on February 14th, 2010

I’ve been developing some sort of software for the past 6 years as a part of my job.  Most of the code I’ve written has been non-production utilities and has followed a very unstructured process.  I see something that has to be done and try to find the fastest way to automate that task.  This definitely doesn’t always result in the most structured or commented code.  That’s gotten me into trouble when others attempt to troubleshoot the code. Heck, it can be difficult to troubleshoot my own code a while after it’s been written!

With Python, I’ve actually found most of the code to be easier to troubleshoot.  It’s really similar to MATLAB, which makes me happy.  Something about the rapid prototyping and easily understood syntax just makes it a breeze to program with.

Over time, I’ve found that much of the difficulty I have in writing readable code comes from parsing data and dealing with complex code structures.  Once a code structure gets beyond about 3 levels, I tend to start throwing temporary or intermediate variables around too much without enough explanation.  Then I end up with a variable name like this: input_signalname_simple_muxed[j]

When a latent error pops up with a variable name like that, it always takes a while to figure out what the heck it even means.  Maybe I could make the variable name more descriptive, but that doesn’t seem to be the right direction (shorter is probably better).  I haven’t really found a good way around my signal naming.  I usually don’t realize how big a problem I am creating for myself until I’m about a quarter of the way through a particular program.

Some refactoring does help the code, but sometimes the problems are too ingrained into the code to make a refactoring very easy.  That’s not a good way to create maintainable code.  To anyone who has (or has ever had) to troubleshoot my code… I’m sorry.  To be fair, I usually hate troubleshooting other peoples code.

Interesting Blogs:

Chris Dixon’s Blog

Seeing Both Sides

Seth’s Blog

To pursue financing or not to pursue financing

Written by admin on February 7th, 2010

I’d like to see my website succeed and be useful and used by lots of people.  I often wonder what the best route is for that to happen.  Obviously if I quit my job and started working on this project full time, I’d get a lot more done a lot faster.  However that is no guarantee that I’d get it far enough fast enough to get enough income to pay my bills before the savings went away.

I’ve also read a lot of advice about how to succeed with an online startup.  The advice I’m most inclined to take is to drive as fast as possible (in my spare time) to achieve ramen profitability.  Get my bills paid with this website so that anything else is just gravy.  As far as I can see it, that’d put me in a strong position to get good terms on any sort of funding.

The problem I have is that I don’t know if I even want financing.  Sure, it would make things happen faster, but that might just add unnecessary stress.  I’m more inclined to strive for some steady growth while still a side-project.  Who knows if my project will succeed.  I sure hope it will and I believe it can.  Otherwise I wouldn’t bother working on it.

Doing it yourself

Written by admin on January 31st, 2010

When I take on a project, I tend to just keep plugging away at the whole thing one chunk at a time.  If I come across a chunk that I don’t know how to do, the internet is my friend and I figure it out.  Of course, this can lead to me taking a couple weeks to a month or more to get something done.  So if you take a look at my site, don’t be surprised if it hasn’t changed in a while.  Changes are also delayed because I attempt to have some sort of life and time to spend with my son.

Right now I’m working on building a home-grown menu function.  The concept is easy, and there are only so many things to keep track of, but I’ve only hacked other peoples javascript or written small simple functions.  I’d like to write this one for myself so that I understand the underpinnings to the system.  Only by understanding it fully can I begin to improve it.  It’s taking time.  This dude over at ihumanable has a nice post to this effect.

For a bootstrapped business, I think this is an appropriate way to go.  It takes minimum investment and the end result is that I know what is going on.  Unfortunately, it can tend to drag things out.  Maybe my problem is that I am not that good at searching the web, but I can only spend so much time searching for something that does what I need without getting the feeling that I’m wasting time.  Thus I churn away at a problem until it’s done to my satisfaction.  It may be a little buggy, but it works for most cases.  At some point I’ll get back to the functions that are buggy.

With that said, if you happen to come across a bug, please drop me a note.  I have a long list of bugs and improvements that I attempt to work my way through as fast as possible.  Unfortunately, I tend to add improvements faster than I really ought to.  Right now, though, I’m trying to work through the critical path from 0 website income to lots.  So some of the smaller bugs are going to go on the back burner.

Some interesting sites

Alltop

allensblog

47 Hats

Startup crack

Written by admin on January 24th, 2010

The web is a drug.  This is nothing new to most people, but it can be a problem when trying to get something done that doesn’t actually need to get done.  I mean, I don’t have to work on my website.  I’m not going to lose income by not working on it…there isn’t anything to lose yet.

One of my biggest problems is that there are a ridiculous number of websites out there dedicated to starting businesses.  And I’m not just talking about the V1@GRa reselling business.  Twitter, newspaper sites, university sites, the large number of web savvy business founders who also blog all lead to wasted time.

It is similar to what  can happen if you watch food network.  You get the feeling of accomplishment by watching without the actual accomplishment.  I like to read these sites because I want to know everything that I don’t know that I don’t know.  Lots of these sites are just about giving you a boost of confidence, some are about tools, some legal issues, some case studies, some business strategy… I’m getting better at discerning the type and quality of a post by the title.  Who am I kidding, though, I usually read it regardless the type.  I love reading the stories of hardship turned into success, but those are also usually the longest ones.

My method of dealing with this startup crack is to reboot the computer into Linux and do my coding without email or twitter open.  I have purposely decided not to use dedicated email or twitter clients on the Linux partition and it has helped keep me on task.  So when I come to a period of time where I expect to have uninterrupted time, I make a decision to either reboot and work, or stay in windows and browse my addiction.

Some crack for your perusal:

Y Combinator library

Inc.com

Entrepreneur.com

Does anyone have some startup or other web crack that they cannot get away from?