John Cole

I'm a senior lecturer here at the University of Texas at Dallas. I had taught at Collin County Community College for three years, and prior to that, at Illinois Institute of Technology in the mid-1970s, which is also where I earned my degrees. Before joining the full-time faculty at UTD in Fall 2012, I had taught part-time for 13 semesters.  I have been a software developer for many years, working on projects as diverse as a SNOBOL4 compiler, a DATABUS compiler, a word processor, the operating system for an early computer, statistical analysis of insurance claims, telecommunications, and embedded programming.  I have used a variety of languages, such as Java, C++, C#, Visual Basic, Intel assembly language, and many others. I still do some outside programming.  Note to graduate students: I am not a researcher nor can I give you an assistantship of any sort.

Welcome to The University of Texas at Dallas

Office hours for Fall 2014, Finals Week, all in ECSS 4.702
Wednesday, 12/18: 9:30 to 10:30 and 1:00 to 2:30
Thursday, 12/19 : 9:30 to 1:00
Friday, 12/20: 9:00 to 10:30

Office: ECSS 4.702. Phone: 972/883-6353
E-mail me at John.Cole@utdallas.edu  Please use this instead of eLearning for correspondence. 
Students, if this concerns a class, please include which class and section you're taking in the subject line.


Date Posted

Announcement

9/18/2014 Hydra-X Creation Contest.  Sponsored by Active Semi, this is a chance to create something cool using their microcontroller board.  See the flyer for more details.  Addtional information will be posted on the UTD ACM Web site.
9/12/2014 Introduction to SQL workshohp on September 13, 2014 in the TI Auditorium in ECSS.  This will start from assuming you know nothing about SQL and take you through some intermediate-level topics.  Please have SQL Server Express Edition or better loaded on your machine, or MySQL from Oracle. The examples will use a simple database called "Company," which you can download here. From the workshop: First set of slides. Second set of slides. JDBC Example.
8/18/2014 Advanced Java Workshop on August 23 in ECSS.  This is recommended for anyone who needs to sharpen his or her Java skills.  If you are taking my CS6301 class (see below) and are not absolutely expert at Java, please take this.  Details are here: utd.edu/k12/utd   Advance registration: bit.ly/utd-only  (Advance registration is required, and free. Walk in registration will cost $10 per person).  Slides from the Workshop.  Thanks to everyone who attended.
5/18/2014 All About Android Summer Workshop May 19-23, 2014
5/17/2014 UTD Student ACM chapter.  I'm one of the faculty sponsors of this organization.  Watch the link for announcements of future meetings and sub-groups such as Linux, computer security, etc.  We're also looking at starting a mobile-apps group.  More details in the Fall.
7/22/2013 Advanced Java/Android Summer Camp
7/8/2013 C++ Summer Camp: Here is a link to the introductory slides.  And here is a link to the slides of the material on basic C++ programming, which were most of what we covered during the day. 
2/21/2009 Link to "Sixth Sense" wearable computer video from the ted.com site.  In general, there is always interesting stuff on that site.
http://www.youtube.com/watch?v=ZfV4R4x2SK0

Interesting Links
UTD International Student Services Organization.  Given the importance of writing in most of my classes, if English is not your first language you will find useful events, such as conversation workshops, writing help, and other help here.  You can get writing help from the Student Success Center's Writing Center.  I cannot stress enough the importance of good writing.
Scott Adams on How to Get a Real Education (from The Wall Street Journal)
Computer Science Education article from EE Times (The author, Robert Dewar, was my thesis advisor)
Why Aren't Engineering Students Happier? Because It's Hard.
Video of Dr. Ben Carson's speech at the White House Prayer Breakfast, 2/8/2013  (Great points on education)
Video of Brett Victor talking about Inventing on Principle (about an hour, and worth it.)  3/1/2013
Java Swing Tutorials, straight from the source's mouth.  These are Sun's, and very good. 2/6/2014

Notes for anyone taking my classes.  Read This!

Courses Spring 2015

CS6301.001 Special topics: User Interface Design for Mobile Devices on Monday/Wednesday from 8:30 to 9:45 AM in ECSN 2.110
CS1337.003 Computer Science I on Tuesday/Thursday from 2:30 to 3:45 PM in ECSS 2.312
CS4V95.015 Undergraduate Topics in CS: Fundamentals of Mobile Application Development on Tuesday/Thursday from 10:00 to 11:15 in ECSS 2.312

Courses Fall 2014

CS6301.015 Special topics: User Interface Design for Mobile Devices on Monday/Wednesday from 8:30 to 9:45 AM in JSOM 1.110
CS6301.022 Special topics: User Interface Design for Mobile Devices on Monday/Wednesday from 11:30 AM to 12:45 PM in ECSS 2.412
ECS1200.024 Introduction to Engineering and Computer Science from 11:00 to 11:50 AM Tuesday/Thursday in the LLC
ECS1200.035 Introduction to Engineering and Computer Science from 1:00 to 1:50 PM Tuesday/Thursday in the LLC
ECS1200.025 Introduction to Engineering and Computer Science from 2:00 to 2:50 PM Tuesday/Thursday in the LLC

Courses Spring 2014

CS6301.013 Special topics: User Interface Design for Mobile Devices on Tuesday/Thursday from 8:30 to 9:45 AM in ECSS 2.410
CS6359.001 Object-Oriented Analysis and Design on Tuesday/Thursday from 10:00 to 11:15 AM in ECSS 2.312
CS1337.003 Computer Science I on Tuesday/Thursday from 2:30 to 3:45 PM in ECSS 2.412

Courses Fall 2013

CS4347.001 Database Systems on Monday/Wednesday from 10:00 to 11:15 AM in ECSS 2.312
CS6360.004 Database Design on Monday/Wednesday from 11:30 AM to 12:45 PM in ECSS 2.412
CS3354.001 Software Engineering on Monday/Wednesday from 1:00 to 2:15 PM in ECSS 2.312
CS6359.001 Object-Oriented Analysis and Design
on Monday/Wednesday from 4:00 to 5:15 in GR 2.530

Previous Courses

Suggested Reading.  A few of you have asked for this list so you don't have to write things down when I reference them in class.

Last revised: December 7, 2014