Linux – Java – Web – Questions Answered, Problems Solved
Welcome to www.BrianZiman.com
Welcome to your source for high quality freelance coding, research, and training in Northern Virginia. If you need to build a simple Linux system for your home office, or set up a sophisticated file server for your company, with in-office training for you and your staff, I can help. Do you need a custom application written in Java or PHP? I can help. Want to learn how to write code for yourself? I can teach you. Do you have a business idea, but no idea how to implement it? That's what I do.
Linux. Java. Web. Questions answered, problems solved.
To get started, please use the contact page to send me a note, then watch, as your problem is solved.
If you are interested in learning more about what I do, please take a look at my résumé, or browse my technical blog, below.
TEKsystems is seeking a GIS Developer for a contract to permanent position with a government integrator in Chantilly, VA. Candidate will perform full life cycle software development for custom geospatial desktop, web-based applications, and geospatial databases, on a C#.Net and ArcGIS platform with SQL Server database, and must be able to obtain a Top Secret Security Clearance.
Desired skill set: ESRI ArcGIS Server (3+ years experience); REST and SOAP (2+ years experience); familiarity with Google Earth and KML; .NET for ArcGIS Desktop (3+ years experience); and Python (2+ years experience).
—Brian (5/4/2012 10:42 AM)
TEKsystems is recruiting for strong computer science/computer engineering graduates for entry level developer openings for a large client in Rockville, MD. An ideal candidate should possess a strong understanding of Object Oriented concepts and be able to solve complex problems. Must be able to learn quickly and should have experience in core Java development.
Developers will be part of a small team, surrounded by very talented and experience developers. It is an Agile environment with 2-3 week iterations. These positions are contract to hire and are open due to growth in the client's organization.
Desired skill set: Computer Science Degree, Object Oriented Concepts, Java or .NET or C++, Strong Problem Solving.
—Brian (3/30/2012 2:15 PM)
(Updated 1/20/2012) It's that time of year again. GMU has finally put my name up on PatriotWeb, assigned to this class, and the Google queries are starting to roll in.
I will be teaching Section 005 of IT206, Object Oriented Techniques for IT Problem Solving, which meets at the Fairfax campus on Tuesdays and Thursdays from 7:20 PM to 8:35 PM in Innovation Hall Room 207. In order to take Section 005, you must also be enrolled in lab section 205, which meets in Innovation Hall 334 on Tuesday evenings immediately after the lecture. The lab instructor for this section is Kiran Thati, who will be assisted by Kruthika Kunduru. I will also be teaching an online section of IT206, Section DL3, for which you must also enroll in lab section 2D3. Kruthika will be the lab instructor for the online sections. The online section will be asynchronous, using recorded lectures that students will watch on their own time. Online students will be expected to attend the midterm exam and final exam in person. You must have earned a C or better in IT106 to enroll in this class, although I understand that some students are transfers and will have a different, but equivalent, course that meets this requirement.
I have found that students very rarely come to fixed, scheduled office hours, even when they really should. Because of that, I generally tell students that office hours are by appointment — if you need to meet with me, please let me know, and I will make myself available. The most convenient time for me would probably be after class on Thursday evenings. More details will follow.
This class will use Deitel's "Java, How to Program" text book, which you will hopefully already own from IT106. I think the department currently encourages the "Late Objects" version, with the red cover, but it has the same content as the blue cover version, with the chapters in a different order. Please remember that I did not choose this book.
IT206 is the middle course in the Applied IT Department's programming sequence, and the last course required for all AIT majors. The course will introduce Object Oriented Programming techniques, and builds heavily on the material from the first course. Programming courses are not like courses in other disciplines where the material is largely independent from one to the next. In this course, you have to understand each topic before you can successfully move on to the next one. The best way to become a good programmer is to write an awful lot of code. If the only time you ever write any code is during your lab section, you will probably find this course very challenging.
This course can be challenging for anyone, so I highly encourage you to ask questions as often as possible, and keep asking until you are sure you understand. Feel free to contact me by sending e-mail to email@example.com. Any message not sent from your GMU account and with "IT206" in the subject line will probably be eaten by my spam filter.
All material for IT206 will be posted on the course section of the MyMason Portal.
—Brian (1/13/2012 12:24 PM)
Metron Aviation is looking for a mid-level software tester with three to five years of experience to join our Commercial Products and Services team. Must have strong test design skills, strong exploratory testing skills, and the ability to work in a collaborative and fluid environment with iterative releases. Agile experience is highly preferred.
—Brian (8/24/2010 11:12 AM)
A young, high-energy technology solutions provider is looking for a Web Application Developer who has great breadth and depth of skills, and who can flourish in a fast-paced, demanding environment.
—Brian (7/26/2010 11:17 PM)
As luck would have it, I will be teaching another class for the Fall semester. This time around, it's IT 306 - Program Design and Data Structures, the three credit sequel to IT 108. Really, it's the sequel to IT 206, but this will be the first semester that IT 206 has been offered, so no one has taken it yet, so that's where that comes from. The course meets at the Prince William campus in Bull Run Hall, room 247, on Tuesdays from 4:30 PM to 7:10 PM, and I will hold office hours by appointment after class in the adjunct faculty closet on the first floor.
The text book for this class is Deitel's Java, How to Program, which is a bit of a monster, so hopefully you've got bags with wheels. Your TA will be Minu Hariharan.
This is going to be a programming intensive class, where you will be writing an awful lot of Java. It's probably going to take me a while to get all the materials for the semester put together, but I hope to have everything done in advance of the start of the semester, next month. In the meantime, if you need to contact me, please send e-mail to firstname.lastname@example.org. Any message not sent from your GMU account and with "IT306" in the subject line will probably be eaten by my spam filter.
All of the material for this class will be posted on the GMU Blackboard site, as it becomes available.
—Brian (7/21/2010 5:09 PM)
Visit the Metron Aviation careers site to apply, or send me your résumé.
—Brian (6/30/2010 3:10 PM)
Okay, so I'm a little behind on my updates, but I figured I'd better write up my thoughts on IT108 now that the semester is over. My first goal for the semester was to motivate my students, and keep them interested in programming, even if they find it challenging, and aren't sure how it could possibly be of any use to them. Well, out of the thirty students originally enrolled, only a handful dropped the class, and twenty-one students made it all the way through to the end. And most of those showed up to every class. From what I hear, that's a lot better than the average for this class.
What wasn't better than the average were the grades. Only six students passed the class, and that's mostly due to the dismal performance everyone had on the exams. While many students made huge improvements on their programming assignments as the semester went on, the results on the final exam were every bit as dismal as the results on the midterm. Despite the improvements that students made on their programming throughout the semester, their performance on the exams indicates that they really didn't have a firm grasp of what they were doing — you can write a program without understanding how it works. Next semester, I need to work harder to make sure students are understanding, as well as just doing. I think that's going to mean walking through many more examples, and having more practice assignments that resemble the sort of questions the students can expect to see on the exams.
I think one of the reasons the students had trouble, was because I dumped a lot of really heavy theory on the class at the beginning, and I think I need to start with much simpler assignments. On the other hand, the students had tremendous difficulty with even basic problem solving — a skill that all college students should have. I fear many of my students would be unable to coherently explain the steps for solving a problem, even if it didn't involve Java.
Another major problem the students had throughout the semester was meeting the required formatting for their submissions. The design diagrams and Java programs have a specific required format. It should make it easier for them to write, as there are fewer variables — it's like the difference between short answer and multiple choice. When you just have to choose from a handful of operations, and assemble them in the correct order, that should be a lot easier than coming up with your own operations. But the students just couldn't get the hang of it. I gave them a ton of code, but they couldn't recognize the pattern and get the indentation and formatting the same. I don't see how anyone can expect to do well when they won't do the simple stuff.
Of course it's not entirely their fault — there's just too much crammed into one class, and the department recognizes that, and starting in the Fall, they're breaking the programming requirement into two classes: IT106 and IT206. Of course this doesn't really help my students. The students who did not pass have two choices. They can either re-take IT108, in which case the grade for their second attempt will replace this attempt in their GPA; or they can change to the new catalog year and take IT106 and IT206, which would be better for their learning, but worse for their GPA and add yet another semester to their program of study.
So here's my advice. If you averaged better than 80% on the programs and project, then you should probably re-take IT108, and you'll have a much easier time at it. For you, taking IT106 would probably be a waste of time, since you probably already have a good grasp of all the material that will be covered there.
If you did not achieve at least 80% on the programs and project, then you're pretty much going to be starting from scratch either way. Only two of the students who were re-taking IT108 passed on their second attempt. If you aren't at least somewhat confident in your ability to do the projects from the class, you would probably benefit from switching to the two-course track.
If you're not sure what to do, and want advice specific to your case, or if you have Java questions, or IT questions, or really anything, please feel free to contact me. I really appreciate the encouragement and positive feedback I received from the class all semester. It's good to know that I'm making a positive contribution. Now all I need to do is get the pass rate up!
—Brian (5/20/2010 8:50 PM)