Search
William M.'s Photo

William M.

Software developer and CS lecturer

Software developer and CS lecturer

$45/hour

  • 748 hours tutoring

About William


Bio

My career started with a crime: I tore an ad for an HP-65 programmable calculator out of a Scientific American in my high school library--I was fascinated by the idea of a machine that could be programmed to follow a series of steps. Shortly after that I entered college as a Computer Science major. I loved it immediately. I earned BS and MS degrees in Computer Science. After almost a decade in industry, I became an independent software development contractor/consultant.

In 1996 I took...

My career started with a crime: I tore an ad for an HP-65 programmable calculator out of a Scientific American in my high school library--I was fascinated by the idea of a machine that could be programmed to follow a series of steps. Shortly after that I entered college as a Computer Science major. I loved it immediately. I earned BS and MS degrees in Computer Science. After almost a decade in industry, I became an independent software development contractor/consultant.

In 1996 I took the opportunity to teach a college course in comparative programming languages. I found that I loved the challenge of explaining material and helping students master it. In the years since I've continued to blend teaching and tutoring into my schedule as time and opportunity permit.

I've got years of experience with C, C++, Java, Ruby, Python and other languages. I've taught twelve programming languages at the university level. I've spent thousands of hours working individually with students.

In industry my roles have included director of engineering, chief architect, project manager, team leader, and individual contributor. I've worked in a variety of areas, including e-commerce, programming language implementation, graphical design systems, clinical medicine systems, K12 educational systems, fantasy sports, systems programming, and software development tooling.

There's a thing that I call The Fundamental Thrill of Programming. You get it when you write some code and it does what you want it to do. It's been over forty years since I wrote my first program but I still get that thrill. If you're struggling with programming, I believe I can help you. Let's find out!


Education

North Carolina State University
Computer Science
The University of Arizona
Masters

Policies

  • Hourly Rate: $45
  • Rate details: I'm always happy to take a student's situation into account and negotiate on my rate.
  • Lesson cancellation: 4 hours notice required
  • Background check passed on 10/30/2020

  • Your first lesson is backed by our Good Fit Guarantee

Schedule

Loading...

Sun

Mon

Tue

Wed

Thu

Fri

Sat


Subjects

Computer

Computer Science,

Computer Science

Along with working as a software development contractor/consultant since 1993 I've taught upper-division computer science classes as an adjunct lecturer at The University of Arizona as time and opportunity have permitted since 1996. The subject I've most frequently taught is comparative programming languages, covering Standard ML, Haskell, Ruby, Prolog and other languages over the years. I have also taught systems programming, UNIX, web programming, and classes focused specifically on C++.
Java,

Java

I've worked with Java in a variety of ways since 1996. I've used it in a number of contracting/consulting projects, I've managed an engineering office of a Java-centric start-up, I've taught Java at The University of Arizona in professional education classes, and I've tutored dozens of Java students on an individual basis both here on Wyzant and elsewhere.
Linux,

Linux

I fell in love with UNIX when I was an undergraduate Computer Science major and I've worked with UNIX and UNIX-like systems or tool suites on a daily basis for over 30 years since then. I've got experience with V6, V7, BSD, SunOS, Solaris, Ultrix, AIX, macOS, Linux, MKS Toolkit, Cygwin, and others. I've taught UNIX in a 300-level university class several times. I've also worked as a UNIX system administrator, although not in recent years. I especially love cooking up Bash pipelines to solve problems. The various flavors of Linux, UNIX, packages like Cygwin, and now Microsoft's Windows Subsystem for Linux make UNIX tools available on a very wide of platforms. I can help you master those tools and put them to great use.
Python,

Python

I've worked with Python on a regular basis since 2010. I've taught Python in classes both at The University of Arizona and on a volunteer basis at the high school level for Microsoft TEALS. I've also collaborated with other faculty at The University of Arizona to develop and improve content in CSC 110 and CSC 120, their Python-based introductory computer science classes.
C, Computer Programming

Corporate Training

Java

Java

I've worked with Java in a variety of ways since 1996. I've used it in a number of contracting/consulting projects, I've managed an engineering office of a Java-centric start-up, I've taught Java at The University of Arizona in professional education classes, and I've tutored dozens of Java students on an individual basis both here on Wyzant and elsewhere.

Ratings and Reviews


Rating

5.0 (150 ratings)
5 star
(147)
4 star
(1)
3 star
(1)
2 star
(1)
1 star
(0)

Reviews

Show reviews that mention

All reviews

Great at breaking down big concepts into bite sized pieces.

William is great! He helped me understand a complex problem in step by step ways. He's taught me how to manipulate arrays and to plot data from the arrays. I was stuck and had major impostor syndrome about it and tutorials weren't helping. William has greatly helped to answer all my questions that tutorials do not.

Julia, 27 lessons with William

Great tutor

William is very helpful with all of my projects. He really makes sure I am learning what we are doing and that he is not just telling me what to do. He also goes through the project in a way that teaches me how to begin such n=big projects like these without feeling overwhelemed

Shannon, 15 lessons with William

Super friendly and helpful

Fantastic. 5 stars. William was patient and respectful. Went above and beyond to help me. Highly recommend. Explained all the questions I had and was knowledgable even though we were working with a program he hadn't used in quite some time.

Olivia, 6 lessons with William

Works through the process.

William is patient. Explains what needs to be done and why. Walks through the process for your understanding. Confirms the amount of time spent and charged. Highly recommend.

Duong, 1 lesson with William

Extremely Patient and Understanding!

William was able to guide me through the errors on my c program. As i am relatively new to C, he was patient in walking me through the code line by line and putting in helpful notes on a word doc for reference. He also went out of his way to let me know about some problems i might come across afterwards in a particular program and it helped me have a clearer sense of what i was looking for. I am looking forward to future lessons with him!

Terri, 4 lessons with William

Great tutor

I was really thankful for him for being my tutor he picked up right where the other tutor left off and he also help me finish the code fast enough for me to turn it in before the due date

Izabella, 2 lessons with William

Fantastic tutor.

We scheduled William to help my daughter for a CS project and he helped her finish it in one session. She said he is great!! Super helpful and so nice to work with.

Michelle, 3 lessons with William

Knowledgable and patient tutor

He is a wonderful and patient tutor! He explains concepts very well and strives to see you succeed and understand things fully! If you need help in any of your computer science courses, I highly recommend!

Reagan, 2 lessons with William

Knowledgeable Tutor

Hired William for my college son who needed help for his end of the year java project. My son attends a technical college, and all of the tech classes are challenging. When classes went to online learning due to Covid-19, he struggled as this is not the best format for teaching this type of class. William is extremely knowledgeable and patient. He was able to teach and guide my son through a very lengthy and difficult java coding project that took several weeks to complete. My son expressed that he felt more confident in his programming after working with William. Highly recommend!

Sylvia, 6 lessons with William
Contact William

Response time: 1 hour

$45/hour

William M.'s Photo

William M.

$45/hour

  • No subscriptions or upfront payments

  • Only pay for the time you need

  • Find the right fit, or your first hour is free

Contact William

Response time: 1 hour