Wednesday, August 21, 2013

What To Know About Python: I. Windows Environment

Recently I took a terrific Coursera online course from the University of Melbourne on Discrete Optimization, led by Professor Pascal Van Hentenryck with teaching assistant Carleton Coffrin and team. I highly recommend the course to anyone wanting to learn Discrete Optimization - it presents classical optimization problems with lively videos, many-sized problems and superb graphics.

Professor Van Hentenryck's introductory video to Discrete Optimization


I achieved my goal of upgrading my skills, but sadly failed the course, in part because I needed better Python programming skills. So I'm going to devote some blog pages to what it would have been useful to know before doing the course.
CodeAcademy is a great place to start learning Python. It gamifies learning with short little examples and helps you learn about lists, dictionaries, tuples, as well as for, while and if statements. I did a little each morning.
It's useful to look at the official documentation,  which includes Tutorial, Library Reference and Language Reference.  If you use Google to search for information about Python, chances are it will find the Tutorial, which is useful when you are starting out, but you will quickly outgrow it. So the Language Reference has more detailed information.
I used Windows as my development environment. I started with the IDLE development environment. It provides an editor, a Python Shell and a rudimentary debugger. At the end of the course I found Spyder - the Scientific PYthon Development EnviRonment, which also has these features, but can show you code structure, objects in a more complete Interactive Development Environment (IDE). I wish I'd used Spyder.  Our course recommended Python 2.7, which you can download (different from Python 3). Windows version 2.7.5 came out in May 2013.  You can find Python for many different platforms, including MS-DOS and BeOS too.

Friday, April 26, 2013

AT&T: Please stop blocking access to my AT&T Yahoo! account

We have at least 6 devices, with multiple email addresses that use AT&T's smtp.att.yahoo.com mail server to send messages. If one of these devices has the wrong account password then it will poll to try and get email.  AT&T will think this is fraudulent and shut down access to the MYNAME@sbcglobal.net and MYFAMILYMEMBERSNAMES@sbcglobal.net.

Here's an example.  My Kindle HD hasn't been used for a week, in that week AT&T made me change my password.  When I charge the Kindle and it finds WiFi it starts to look for email and has the wrong password.  AT&T thinks this is a hacker. So it locks the account.

So first I find my email messages aren't getting sent.  Then my husband complains he cannot send email and goes to the coffee shop to send it from his iPhone. 

Meanwhile, I go to Yahoo! and see if I can log in with my email address.  AT&T tells me that I must have the same password for both MYNAME@yahoo.com and MYNAME@sbcglobal.net. I did not know this at one time and had two separate passwords - hence AT&T would constantly lock me out.

I find I can't login to my Yahoo! account. So I click on Forgot Password? and go to an AT&T Page.  It even has a note saying "What User ID Should I Use?":


  • Wireless Password
  • U-verse Password
  • Home Phone / Internet Password
  • AT&T Email Password
  • AT&T Access ID Password
Note: it doesn't have my Yahoo! Password as a choice - even though the user's Yahoo! email password could be causing the problem. 

I go through the security questions and reset my password to what it was already - I don't want to have to reset the password in all the email systems and websites on my 6 devices every time this happens - although I do believe in changing passwords occasionally when I have a system maintenance day.

I go back to Outlook - I go to Account Settings and test the account settings. The email sending server smtp.att.yahoo.com cannot be accessed. I remember what an AT&T account support rep told me "Go to Yahoo! mail and login with your new password from your usual computer." I do this. I go back to Outlook. Finally I can send email.

AT&T please stop blocking my account.  You have other ways to know what my devices are - you can know the MAC number, you can know my DSL line, you could just block the offending device - in this case my newly charged Kindle - and tell me to change the password on that device.  Please implement smarter rules before you lock me and my family and any house guests out of my account.

Update: May 1st 2013 - account blocked again - password ceases to work.

Update: May 10th 2013 - account blocked again - tried DSL support - I should have found the email support - but this was the best support page I could find - here's a transcript of my conversation.


System
Welcome Ms. Angela Hey.
System
Connecting to server. Please wait...
System
Connection with server established.
System
Technical Support Topic: Other High Speed Internet Issues
System
Bruce has joined this session!
System
Connected with Bruce
Bruce
Thank you for contacting AT&T. My name is Bruce.
Bruce
I see that I am chatting with Ms. Angela Hey and is XXXX the number associated with your DSL/Dial account?
You
No the DSL account is on YYYY
You
The DSL works - so don't troubleshoot that
You
This is an email server authentication problem
You
I can get on the webmail but not the POP mail
Bruce
Please don't worry, I am here to help you.
Bruce
Ms. Hey, thank you for confirming the details.
Bruce
Please let me know the e-mail address with which you are experiencing the issue.
You
MYNAME@sbcglobal.net - I can get on to webmail, but the POP and SMTP server access from Outlook is not working - I used to have Yahoo servers, but I changed to inbound.att.com etc. neither work.
Bruce
Thank you.
You
smtp.att.yahoo.com and outbound.att.net don't allow access
Bruce
Please try to send a test email to yourself and let me know if you are able to send and receive it from webmail.
Bruce
It will make sure if it is a password issue or the settings issue.
You
I can use webmail but not Outlook. It is not a settings issue as it was working for the last 9 days. What happens is AT&T blocks my account because of security issues and then when I reset the password I cannot login. However, I could login to Yahoo on the web. So I suspect there is a delay in updating the authentication servers -that is unacceptable,
Bruce
the e-mail program that you are using is for non supported AT&T software. However, I can assist you with the basic configuration information which is important for any e-mail program such as Microsoft Outlook, Outlook Express, and Windows Mail etc.
You
i.e. authentication was reset and works on both att mail and yahoo mail, but does not work with POP and SMTP servers - I have had a 5 minute delay before - but not a 1 hour delay
Bruce
To be able to send and receive e-mail using an AT&T e-mail address while connected to AT&T Internet Services, the e-mail program should have the following settings:
You
I know how to configure Outlook - don't waste time on that
Bruce
1. Incoming mail server (POP3) as inbound.att.net with port number 995 along with SSL.
You
Done
You
Doesn't work
Bruce
2. Outgoing mail server (SMTP) as outbound.att.net with port number 465 along with SSL.
Bruce
3. Make sure to use your complete email address in the “Username” field.
Bruce
4. Please also ensure that "My outgoing server requires authentication" is also checked.
You
I have the complete email name - it worked yesterday!
Bruce
. 5. If you would like to save a copy of the message on AT&T Yahoo! Mail web access, please ensure that "Leave a copy of message on server" is also checked.
You
I don't want to leave a copy on the server
You
I know how to set Outlook - it works fine until AT&T blocks the server authentication
You
Maybe the server is busy:)
Bruce
For this issue you need to contact our Connectech department (paid support), they are experts in non AT&T issues. Shall I provide you the details of Connectech department?
You
No I should not have to pay because of AT&T's latency in transferring authentication from one server to another
You
I need someone to go into the SMTP server and allow me to connect
You
This happens every 10 days
Bruce
Yes, that's why our only our Connectech department would be able to help you with this issue.
You
Give me their number - But I shouldn't have to pay!
Bruce
Our Connectech department is a paid department.
You
Can I send the bill to AT&T
Bruce
As we are from AT&T DSL support team, we don't provide support for non AT&T provided softwares.
You
I already have a blog detailing this appalling service
You
Now why didn't you say that in the beginning - it's clear I need email support, not DSL support
Bruce
It will be fixed for just fifty five cents per day( or $15/month with 1-year agreement) which you can drop anytime in between. You can chat or call 24/7 for any issue like your own personal technical support.
You
Good day

Saturday May 11, 2013 am - went into Yahoo.com  - logged in OK, earlier in the morning DNS problem shows up
Saturday May 11 2013 pm - SMTP server works again

Monday May 13 morning - smtp.att.yahoo.com - not working again - could the Wii be the culprit - I had not touched the Internet services on the Wii - but it does have an Att.net page - does anyone know - does the Wii pre-load pages when you are doing other things - like yoga and reading the AP news on the Wii (which is what I was doing).

Now I am going to change our outgoing mail servers. When we had DSL installed many years ago, AT&T said we MUST send on the AT&T servers - this is not true! 

Changed the outgoing email servers for techviser.com and heymash.com so they did not use the AT&T servers. All is well on those accounts. 

Tuesday May 21 2013.
For the past few days my iPhone has been trying to login to my AT&T/Yahoo! account - I had given up on resetting the password - so today I went into att.com from my computer to reset it. I reset it to yet another password - I wish, like Google, it would tell you if the password has been used before. 
I then went into Outlook to update my Outlook settings. Can't login to sbcglobal.net servers (
pop.att.yahoo.com and smtp.att.yahoo.com)

  • Log onto incoming mail server (POP3): Your e-mail server rejected your login. Verify your user name and password for this account in Account Settings.  The server responded: -ERR [AUTH] invalid user/password
  • Send test e-mail message: The connection to the server was interrupted. If this problem continues, contact your server administrator or Internet service provider (ISP).
I go to check my Yahoo! sign in. For the first time I get this message:

We have identified that you have more than one account linked to your ID. Please select the email account you would like to access for this session.
 MYNAME@att.net
 MYNAME@sbcglobal.net
Maybe this is a problem - as I was already logged into Yahoo! when I went there - even though I had a few minutes ago changed my password for MYNAME@sbcglobal.net and even though in the past, AT&T tech support has told me I need the same password for each of these accounts and for MYNAME@yahoo.com.
I check the server names and ports and change them in MS Outlook.  There are a couple of ominous messages:
  • AT&T's POP/SMTP settings have changed to inbound.att.net and outbound.att.net, but if you are using the old server settings (pop.att.yahoo.com and smtp.att.yahoo.com), they will continue to work. You do not have to change them at this time.
  • If you created a free att.net email address after June 11th, 2011 you will not be able to use an email client to access your email. Retrieve your email at http://www.att.net.
Note "they will continue to work" "you will not be able to use"... somewhat contradictory. My Yahoo! and sbcglobal.net accounts were created long before 2011. 

There seems to be incredible latency between setting up the password on AT&T's website and changing it in the POP and SMTP mail servers.  Meanwhile, my Outlook will keep trying - which then may give a false password to the servers and AT&T will lock me out yet again- totally unacceptable.