heredago's blog

November 28, 2012

QUORA program python howto

Filed under: Uncategorized — Tags: , , , , — heredago @ 11:02

Learning to Program: What are the best sites for learning programming?

REDDIT: I waste roughly 6 hours a day in front of my work computer. What’s something useful/fun/helpful I can do with my time besides redditing?



36 Answers

Nick Huber, Internet adventurer

I’ve been spending 6-8 hours/day teaching myself to program for the past month or so and have basically scoured the Internet for every free or semi-free tutorial out there.

Here’s the good stuff I’ve used and recommend:

  1. CodeHS ( — Personally graded, video-then-program format problems, starting with a toy language called Karel and moving up to Javascript, culminating in you making the game Breakout in your browser. Founded by two ex-CS106a TAs at Stanford from which the curriculum was largely adapted. They have probably 40 hours of really good content and, most importantly, provide you friendly, one-on-one help with like ~3 hours turnaround when you need it. Check out my version of Breakout I made after doing all of the content:EpicBreakout ( (1)
  2. Google’s Python Class ( — Unlike above, requires some set-up on your machine (i.e. you’re not coding in-browser), but still good. About two days worth of lectures on Python with a handful of good problems, culminating in regular expressions (like a custom CRTL + F in a Word document) and a problem where you descramble an encoded image from a website.
  3. CodingBat ( — Python and Java problems. No frills, just the exercises — probably better for someone with a little bit of background (meaning you know what a function/parameter is and can use The Google to figure out/find syntax/functions you need). The site was made by the same guy who taught the Google Python Class.
  4. Khan Academy ( — A few intro tutorials (mostly graphics/animation-focused) in JS using a well-regarded library (Processing.js) and then a wide-open project space for you to see programs other people have made (i.e. the end result and the code) and to make your own, potentially forking off of their work. Here’s a game that some guy made that served as inspiration for my version of Breakout: Mercury Subspace ( Pretty great, right?
  5. Codecademy ( — Solid read-then-write-code format of small problems broken into different subpieces. I used their HTML/CSS tutorials to get a basic background before making my personal website ( and am going to use their stuff on more advanced JS and jQuery when I get to it (I think it’s better than, and comparable in approach, to Code School ( Still, their grader is a bit buggy and there’s a large variance in course quality/overlap in material, since everything is written by different people.
  6. Learn Python The Hard Way ( — Read-then-implement exercises, starting from no assumed knowledge. Good, but still not as good as interactive problems; I gave up after doing ~20% or so of it because it’s unapologetically repetitive, but have read lots of good reviews of it.

Other good stuff I want to check out:

  1. Stanford iPhone course (all slides and assignments:…) — an iPhone app seems like such a good early project, because it’s so easy to show your friends what you’ve made, but have to figure out how completeable it would be for me. Also, you can’t get your problem sets graded if you’re just working on your own from the material online.
  2. K&R (…) — Highly regarded intro book on C and implementations of the most canonical algorithms. (If you know of a website that tries to do something like this, would love to get it from you.)
  3. The many CS courses on Coursera ( and Udacity ( However, I think it’s really important that you have someone grading your work so that you can get feedback (and that you actually do the problems rather than just watch the lectures). I’m not sure if this is possible if you take the course “off-cycle” and how good the problems are, but still worth taking a look.

After a month, I’ve now got a better idea of what I can make and this then informs things that I think would be cool to make. At this point, I’m most excited about continuing with this project-based learning approach as I think it’s more effective/lasting/fun than more tutorials/classes, but it’s still tough to get this outside of the university/work environment.

  1. Note: it’s unwinnable right now — I need to refactor and expand it, including a bunch more powerups and the final showdown with our hero’s final boss, The Brick King. FYI, my high score is like 550 and the game gets buggy at high levels. Switching to bullets helps and actually adds some unexpected difficulty. Would love to get your feedback/ideas.
8+ Comments • Share (22) • 21 Nov
Nick Huber

David Cole, designer at Quora.

Nick Huber’s answer is killer, I just want to add the set of resources I used that together formed a kind of singular, linear learning experience for me.

Before I joined Quora, I had never written a lick of Python and my programming experience was limited to goofing around in WordPress theme code. To prep for my upcoming job I tried a few different resources including the popular recommendations like the Google Python class, Learn Python the Hard Way…nothing really clicked. I don’t doubt their quality, but everyone has their way of learning.

My goal was to be able to build a complete application from concept to deployment, so I was looking for tutorials that took me along every step, assuming nothing and taking me all the way to a running application on a production server.

I asked the engineers at Quora what they recommended for an introduction to Python and they pointed me to Think Python: How to Think Like a Computer Scientist ( This ended up being a perfect resource, as I really connected with the way everything is explained. It balances the philosophical with the useful, and the exercises don’t ever feel too rote. It’s both a primer on Python and on the general, cognitive aspects of programming.

As a follow-up learning experience (excluding the undeniably immense learning I get on the job) I started building my own projects with Flask ( Their tutorial for building a basic application assumes very little, and the aforementioned book gave me the footing I needed to zip right through it. I had initially started with Django, but it felt very heavy. With Flask I feel like I understand each thing I’m doing, even if there’s a lot of wizardry underneath.

Flask has a nice level of community support, and Heroku has a tutorial (Getting Started with Python on Heroku ( that holds your hand through the process of deploying a Flask application to one of their servers. It’s not quite the final step in the process because Heroku doesn’t support SQLite, which the Flask tutorial uses, so I had to connect that one last dot.

Fortunately, an article about precisely this had already been written: Flask and PostgreSQL on Heroku ( This post wasn’t as newbie-friendly as I’d hoped, but with the help of ( (to get Postgres running locally), the SQLAlchemy Documentation (, and good old fashioned guess-and-check, I achieved my goal of getting a simple web application deployed onto Heroku.

There were detours, like boning up on the command line (Unix Command Line Tutorial (, getting deeper into Git (Git Is Simpler Than You Think(, finally figuring out what the heck the PATH varible is (The PATH Variable ( — lots of little learnings. But all in all, it was really these two core resources, Think Python and Flask, the theory and the practice, that have been the most valuable uses of my time.

November 21, 2012

CCTS fido port porting rogers rfd

Filed under: Uncategorized — Tags: , , , , , , , , , — heredago @ 10:44

lien posté vers la page 80? vers 2012-11-21 10h AM


How to avoid paying for 30 days of service when porting a Rogers/Fido mobile number in Canada

Posted by  on January 10, 2012. 26 comments.

TL;DR: When you port a mobile number from Rogers or Fido, they try to charge you for 30 days of service beyond your port date. Here’s how I avoided paying this “port fee.”

This is a longish post, but I’m hoping it’ll be helpful for anyone who’s planning to port their number from Fido/Rogers, and wants to save a few bucks.

Recently, I ported my mobile phone number from Fido to When I called Fido to verify that there was nothing on my account that would prevent a port, they told me I’d have to pay for 30 days of service aftermy number was ported. Here’s a transcript of my online chat with Fido representative Jennifer:

FidoANSWERS! Hello Daniel Misener, my name is Jennifer, and it will be my pleasure to assist you today. Please allow me a moment to answer your question. Thank you for your patience.

Daniel Misener says: Hello, Jennifer.

Jennifer says: I’m sory to hear you are thinking of leaving Fido, may I ask why ?

Daniel Misener says: I’m leaving the country, moving to France, and need to port my Canadian number to a VOIP service.

Jennifer says: To answer your question, you have no active contract, therefore there would be no penalty if you ported out your number. You would be charged 30 days of service however.

Jennifer says: I see!

Daniel Misener says: Why would I be charged 30 days of service?

Daniel Misener says: If I port my number, after the port is successful, shouldn’t the amount I owe Fido be pro-rated?

Jennifer says: This is part of your service agreement with us, we ask for 30 days notice to terminate your service.

Daniel Misener says: May I give my notice now?

Daniel Misener says: With an end date 30 days from today?

Jennifer says: With a port out, the notice is the port itself. It would begin on the day the number leaves Fido.

Daniel Misener says: Right. My question then is, if I give my cancellation notice today, then port the number before the 30 days are up, will I still be charged 30 days after the port? Or 30 days after today?

Jennifer says: You cannot give your notice today and port your number because if there is a scheduled deactivation, your number will not be able to be ported. So for porting, the port itself is the notice and the 30 days start from that day.

Daniel Misener says: That’s a shame.

This, of course, seems crazy. Why should I pay for 30 days of service that they’re not actually delivering? Some quick Googling turned up this RFD forum thread, and this post at RogersWatch, which explains how to avoid paying for these 30 days. It seems that the CCTS (The Commissioner for Complaints for Telecommunications Services) has recognized this 30-day “port fee” as an issue. If you complain to the CCTS, you can avoid paying. RogersWatch’s advice:

  1. go ahead and do your port whenever you darned well feel like it
  2. after it’s all done promptly call Rogers and tell them to reverse your 30-day fee because you ported out, or else you’ll just file a complaint with CCTS about it (and CCTS will force Rogers to reverse the charge if you file a complaint)
  3. if Rogers doesn’t co-operate then either escalate to OoP or CCTS (I recommend CCTS) per this Rogers complaint escalation flowchart

So then, after my port was completed, I called Fido, asked them to reverse the charges. When the Fido representative said she couldn’t, I went to the CCTS website and registered a complaint. It’s simple, and only took a few minutes. For reference, here’s my complete complaint:

Details of the contract dispute: I ported my Fido telephone number to a VOIP provider. The port became active on January 3, 2012. I telephoned Fido on January 3, 2012 to confirm that there would be no further charges on my account. The Fido representative (“Molly”) said that I would continue to be charged for 30 days of service beyond my port date — service that I would not receive, a sum of ~$44.

Date the contract began: [I left this blank]

Date the contract terminated, will terminate or renewed: 2011-12-28

Date you became aware of the dispute: 2012-01-03

What steps did you take to resolve the matter with your TSP? I asked the Fido representative (“Molly”) to reverse the charges internally, as I should not have to pay for services that I will not receive.

What did your TSP say/do? The Fido representative (“Molly”) told me that she could not reverse the charges. I informed her that I would make a complaint to the CCTS.

What do you consider to be a reasonable resolution to your dispute?A reasonable resolution would be for Fido to reverse the charges, so I am not paying for service that they are not delivering to me.

Other organization? [I left this blank]

Two days later, I received an email from the CCTS, confirming that they had received my complaint, and that it fell under their mandate:


Dear Daniel Misener,

Thank you for contacting the Commissioner for Complaints for Telecommunications Services (CCTS). The CCTS is an independent agency with a mandate to receive, facilitate the resolution of, and, if necessary, resolve eligible consumer and small business complaints relating to certain retail telecommunications services.

We have received your complaint [CASE NUMBER] and hereby advise you that your complaint falls within the scope of our mandate and will be processed in accordance with our Procedural Code (the “Code”), which can be found at:

We encourage you to review the Code so that you are aware of the complaint resolution process as well as your rights and responsibilities as a customer.

In accordance with Section 6.5 of the Code, we have forwarded your complaint to your telecommunications services provider (TSP). Pursuant to Section 6.6 of the Code, your TSP is to:

a) within 15 days of receipt of the complaint advise the CCTS in writing, with a copy to you, that the TSP objects to the complaint on the basis that in their view, it should not be investigated pursuant to the Procedural Code or any other lawful reason;

b) within 30 days of receipt of the complaint advise the CCTS in writing, with a copy to you, that the complaint has been resolved to the mutual satisfaction of both you and the TSP; or

c) within 30 days of receipt of the complaint advise the CCTS in writing, with a copy to you, that the complaint remains unresolved and of the TSP’s intention to file a written response thereto.

In the event that your TSP responds that the complaint has been resolved to the mutual satisfaction of both you and the TSP and you disagree that the matter has been resolved, you must advise CCTS within 20 days of your TSP’s response.

If you have any questions or concerns regarding your complaint, or anything contained in this correspondence, please do not hesitate to contact us.

P.O. Box 81088
Ottawa, ON
K1P 1B1

Please ensure to retain this correspondence for future reference.


CCTS Assessment Team

The following day, an email from the Office of the President at Rogers:

Dear Daniel Misener,

This e-mail is in response to the incident that was referred to us by the Commissioner for Complaints for Telecommunications Services (CCTS) [CASE NUMBER]. First and foremost, we would like to thank you for taking the time to share your observations with us. Feedback from customers is always appreciated.

In response, we would like to clarify that according to Fido’s Terms and Conditions, which govern all services provided by Fido explicitly state:

“…you may terminate any or all of your Services upon no less than 30 days’ advance notice…” and “… Applicable charges continue to apply until the end of the notice period or until the Services are no longer accessible by you, whichever is later. The transfer of your telephone number to another telecommunications service provider constitutes a termination of the applicable Service(s)…”

Should you wish to consult the Fido Terms and Conditions, you may do so via or on the abbreviated version on page 2 of every Fido invoice. Please note that this is a common practice amongst Canadian carriers, as such it may be an applicable condition for your new service provider as well.

A review of your files reveals that Fido has received notice of your cancellation on January 3, 2012 upon the transfer of your telephone number to another telecommunications service provider, as such the 30 days notice period applies as of this date. We were thus unable to find any billing errors. Notwithstanding the above, in view of finding an amicable resolution Fido is prepared to offer the following:

  • As a goodwill gesture credit $44.44 which represents the monthly service fees (taxes included) to be charged on your final invoice.

Your final invoice will be issued in date of January 14, 2012. Any usage fees above and beyond your monthly service plan remain legitimate

It is understood that the above option was offered in the sole optic of finding an amicable resolution, is without prejudice and in no way constitutes an admission of liability on the part of Fido.

We consider the above incident resolved.

And the same day, another email from the Office of the President at Rogers, addressed to the CCTS, cc’ing me:

Dear CCTS,

Concerning the CCTS complaint number # [CASE NUMBER], we have contacted Daniel Misener by e-mail and successfully reached a satisfactory resolution by applying the requested credit as a goodwill gesture (monthly service fees of the final invoice).

Should you or our client have any further questions please do not hesitate to contact us.

I also received an email the same day from Fido — an “account change confirmation” detailing the charges on my account that would be reversed.

So then, it seems that the advice from RogersWatch is solid: Port your number, and once the port is completed, call Fido/Rogers to request that the 30-day fee be reversed. If they don’t cooperate, complain to the CCTS. It worked for me, and it was an easy way to avoid paying $44.44.

Next post: 

Previous post: 


  1. Jess Whyte

    Clap clap clap

  2. Tony

    Good story. Is this a service you will still use when you return or does it only make sense for your particular situation?

    • For us, is simply a good way to “park” a phone number so we don’t lose it while we’re away. When we get back, I’ll port it from to someone else, I’m sure.

  3. amy

    Brilliant. I will definitely be trying this soon.

  4. Jared

    Does this apply to all carriers or just Rogers?
    Since I have the exact same problem but iam with Virgin mobile and ported my # yesterday and found out Virgin is going to charge me for 30 days from yesterday. My monthly bill is just under $100. And i def dont want to be charged that for no service provided.

  5. K H

    I was billed for 30 days of service after I ported my number out too and I contacted the CCTS, just as this post had recommended. Filling out the form was easy and quick. Within one business day I received an email from the CCTS that they’ve received my complaint and the very next day I received an email from Fido Solutions (the person’s title was Advisor -”Office of the President”) telling me that they’ve credited the owing balance. I’m really surprised that this worked and really happy this is resolved. Thanks to Dan for this post and thanks to CCTS for the help!

  6. Dmitry

    Beautiful. Thank you very much for writing up a detailed explanation for this. Also, I can’t believe this doesn’t turn up on Google until 3-4 pages into the results.

    • Hope it was helpful.

      Re: where this appears in Google results — good question.

      It’s long overdue, but I just changed my permalink structure to generate more SEO-friendly URLs. Maybe that’ll help.

  7. Nhi Tran Le

    Thanks for your details. Got my money back today 🙂

  8. Henry

    How did you guys address this note from the CRTC?

    “If it’s your residential phone, you may not have a contract for local phone service. If you don’t have a contract, you can cancel your service anytime.

    However, if you reside in a competitive area, where the terms of service are no longer regulated by the CRTC, you must communicate with your service provider to cancel your telephone service. Cancellation takes effect 30 days after the date you contact your provider. You will be charged and be responsible to pay the applicable charges for that 30 day cancellation period.”

    Scroll down to this section labeled: How do I get out of a contract with a phone company?

  9. Henry

    I just called them twice, ready to demand that the 30-day billing of “dead air” time be reversed.

    Me: Could you tell me more about this policy?
    Sherif: Yes. If you cancel, we will charge you 30 days after you give us notice.
    Me: If you look up my file in your system, you’ll notice in early July I called and requested a port over and was —
    Sherif: Okay okay. You have a zero dollar balance, okay??
    Me: What?
    Sherif: No charge to your account. zero dollars
    Me: Great! Could I have a confirmation number of this conversation?
    Sherif: Yes, it is [confirmation number]

    Basically this guy didn’t feel like dealing with me so he just let me win. I really did give advanced 30 days notice (not in writing) that I’d be cancelling my service.

    Anyways, just wanted to reassure visitors on this site that, although as a customer you’re binded by their terms of service which states you must provide written notice to end service, and the regulations outlined by the CRTC, you can still recover these funds by complaining. Call and bug the hell out of Rogers about this! It’s cheaper for them to just pay you out than the intangible cost of dealing with your escalating problem.

  10. Ryan

    I just had this very thing told to me today by a Fido “supervisor” it is EXTREMELY refreshing to have people like you posting your situations, especially when it helps the consumer! I will follow up with my results.

  11. John

    so I do not have to give my current carrier 30 days notice but just go to my new provider, port the number and then when it is done call them to tell them not to charge anything anymore?? The “30 days notice-clause” in the contract does not count? Thanks I am dealing with it right now. And I read that as soon as I call my current provider to have my contract cancelled they freeze my number so I cannot port it anymore.

  12. Michelle

    Did anyone try to do this while still in a contract? We’ve just been told that by moving to the states we’d have to pay $400 per phone to cancel them. If I can VoIP it and avoid those fees that would be awesome!

  13. RL

    Hey. Here is an alternate suggestion. (more of a question, cause I’m not sure if it works… would like to hear what you think).

    User has completed his contract with Fido. User is on a $40/month plan.
    User wishes to transfer his/her number to another carrier.
    User calls Fido and finds out that he has to pay for an additional 30days.

    So user asks to be downgraded to the pay-as-you-go prepaid plans. In particular, ask to be transferred to the ’30cent anytime’ plan.
    This plan has no monthly fee.
    Then call Fido 24hours later and cancel service.

    In this situation, they wouldn’t be able to charge you anything because there is no monthly fee on this plan.

    Let me know if this is flawed in anyway.


  14. AJ

    Hi, I ported from Fido and filled in the CCTS form.
    I just checked my voicemail and I have a message from someone in the Presidents Office to call them back. I’m nervous because I’m not an aggressive person. To be honest I was hoping this would be solved via e-mail. I don’t want to cave-in because I really feel it is not fair to charge for airtime that I cannot use!

    Wish me luck. I hope I don’t get bullied over the phone.

  15. Jason

    I tried this with Bell and they will not reverse the charges. I filed my complaint with CCTS and they still refused to reverse the charges so I guess it depends on what cell phone company. Wondering if I should just let it go to collections out of principle. I can’t believe they are allowed to do this legally? There is no way to port your number without paying for an extra month that you do not use?

  16. Marko

    I hate Rogers… was attacked by a cable installer I caught up on the roof on my home… he was up there stringing a wire over to a neighbors home… a temp hookup. I told him I didn’t want this black wire run over my home… attached to my gutter.. they did this without even asking me! Then the guy got all physical with me telling me he could do as he please. I’m sick of Rogers and these stupid pricks that work for them. I’ve cancelled all my services but want to port my cell number that I’ve had for 21 years to I can then send my calls anywhere from there. I just did the port as it’s only $10 on special at I’m just waiting for Rogers to cause problems… now I know have to fight these stupid A-Holes!!! thanks for the help.

  17. Patrick

    I’m glad I found your blog. I filed a complaint via CCTS against Fido and it worked. My 30 days bill was waived. Thanks!

Leave a Reply

Your email address will not be published. Required fields are marked *

Name *

Email *



You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

 Notify me of follow-up comments by email.

 Notify me of new posts by email.

© 2012 – an internet weblog from Dan Misener. Built on WordPress & the Scherzo theme by Leon Paternoster.

Fonts by Typekit

Android browsers

Filed under: Uncategorized — Tags: , , , , — heredago @ 08:42

Dolphin still IS the best browser, by far. However, as mentioned previously, it has really gone down hill recently. BUT if you install an older version, its flawless. I have 8.5.1, one of the last versions before they started messing around with a good thing. Just search Google for the apk. Much better than Chrome. 

Not sure how boat, maxathon, Firefox etc are nowadays but a few weeks ago I tried them all and Dolphin was still the best.

November 4, 2012

windows 7 install from usb (bootable usb key)

Filed under: Uncategorized — Tags: , , , — heredago @ 20:18  –) tried and it worked (freeware)


but here are possible alternatives:


Create a free website or blog at