Notices and Updates
Revised: 09 October 2008
"
Truth is ever to be found in the simplicity, and not in the
multiplicity and confusion of things.
"
- Sir Isaac Newton (1642-1727)
Recent Changes to this page
-
I fixed a bug in TestHarnessSimplified that caused logging to miss some of the logged data. The new project has
been uploaded to the college server.
-
The Local Asynchronous Calls via Delegate demo handed out in class was an old version that I had previously updated
and simplified. I handed this wrong one inadvertently. The new example is in a folder, AsynchCallback, on the college
server. I will hand out this newer example to the Friday class and leave extra copies on the table in CSt 4-201 in case
you wish to pick one up. The title of the handout is "Asynchronous Calls with delegates".
-
CSE681 Project #1 Grievance day will be held on Friday, Oct 10, at 4:00pm.
Page Links:
Everyone
CSE382
CSE681
CSE686
CSE687
CSE691
CSE775
CSE776
CSE784
Recruiting for internships and full time work
Notes for Everyone:
-
How to download code from course code folders? - The easiest way to access code is with FTP.
Unfortunately, that is available only on campus or using the
vpn client provided for registered students at www.its.syr.edu.
For all former students, I am slowly putting zip archives in the various code folders, so that you can get the
entire contents simply by using the "save target as" selection on the right-click context menu in Internet Explorer.
If you don't find a zip file and are a former student, send me an email and I will put the archive you want in its code folder.
-
My late policy for all courses is to deduct one point per day after the due date. So if your project is 20 days late
you will have 20 points deducted from your grade for the project. I regret the need for this. Sigh!
There are a few reasons for which extensions to project due dates are granted, with evidence. They are: illness or family emergency,
business trip out of town, and an interview trip, out of town. Advance notice is required for the trips.
-
All courses served by this web site require project submissions to be uploaded, using the project upload script linked
on every course page, and also linked above, and here. Note that this requires an SU computer account. You will find instructions on how
to upload projects here.
-
Visual Studio 2008, Professional, is available for download from MSDN. You need an id and password, which most students will have already,
as new students are entered into a database that results in you getting an email from Microsoft with the id and password. If you don't have
that, contact the CIT help desk, ECS Help Desk, on the second floor of Link Hall, near the elevator.
When you download, you get iso images that have to be burned to DVDs or CDs. You can do that in the computer labs, using instructions
you find here.
Also, here is an
on-line resource page
that tells about other options.
-
Here's a folder: Handouts/CompileAndRun that contains information about how
to modify your environment in Cmd windows, so you can run all the visual studio tools, like devenv.exe, e.g., Visual Studio.
This makes it simple to write compile.bat and run.bat files for your projects.
That folder contains a startup.bat file, also in CoreTechnologies/StartupBatFile.
If you run this batch file from a shortcut, you will have access to all the Visual Studio tools, e.g., compilers, WSDL,
XSL, XSD, etc. from the command line. This is necessary, for example, to generate the C# code for a webservice proxy,
using WSDL, as we've discussed in class. See the accompanying screenshot to see how to set up the shortcut.
Note that you may have to modify the paths I've used to match your machine. If you've done all standard installs that may
not be necessary. Also, the doskey settings are things I find useful, but you can ignore if you wish.
CSE382 - Algorithms and Data Structures Remediation
CSE681 - Software Modeling and Analysis
-
CSE681 - I fixed a bug in TestHarnessSimplified that caused logging to miss some of the logged data. The new project has
been uploaded to the college server.
-
CSE681 - The Local Asynchronous Calls via Delegate demo handed out in class was an old version that I had previously updated
and simplified. I handed this wrong one inadvertently. The new example is in a folder, AsynchCallback, on the college
server. I will hand out this newer example to the Friday class and leave extra copies on the table in CSt 4-201 in case
you wish to pick one up. The title of the handout is "Asynchronous Calls with delegates".
-
CSE681 Project #1 Grievance day will be held on Friday, Oct 10, at 4:00pm.
-
The lecture #5 slide for CSE681 now links to the most recent .Net Sockets presentation.
-
There are new semi.cs files in CSGrammar and Project1HelpF08 that fix an error on the manual page - a comment.
-
Change to the CSE681 Project #4 statement to fix a typo.
-
The Wednesday morning section meets from 9:30am - 12:15pm, in CST 4-201, the Digital Learning Center.
-
The Friday session meets from 1:00pm - 3:45pm, also in CST 4-201.
-
The TAs will hold a "Surviving CSE681" in CST 4-201 from 4:00pm - 6:00pm. This is intended to cover basics for those
who are less experienced in software development than most in the class.
-
Vijay Reddy found an
Excellent Tutorial on C# Threads. This will be useful later on this semester.
CSE686 - Internet Programming
CSE687 - Object Oriented Programming
CSE775 - Distributed Objects
CSE776 - Design Patterns
CSE784 - software Studio
-
Here is a response I made to a student's questions about CSE784's Project #1 requirements:
-
Insertion means your repository code adds a file to the its directory system and places metadata into its database. Extraction means your code provides a copy of a file to the user. Removal means the repository deletes the file from its directory structure.
-
Checkin and Checkout are much more ambitious, entailing versioning, access control, and saving information about current checkouts and correlation with that on checkin. The requirements do not ask for that. You may, of course, provide that if you wish.
-
Reflection applies to the DataLayer processing, not to the repository process. For the repository you need a FILE object a and a FILE dependency object that correspond to db tables in the repository. The DataLayer uses reflection to determine the schema of those tables, as it would for some other non-repository application. It is not using reflection on files that enter the repository, but only on the repository's FILE object it uses to persist data into the db.
Seminar Series
Independent Studies
Books on Reserve
Recruiting for Internships and Full-Time work
-
Dear Professor:
Hope you are having good time with the summer.
Currently Acme Packet is looking for entry level and junior level
software engineers. Acme Packet makes Session Border Control thats
used in VoIP networks (more details found on http://www.acmepacket.com/).
Requirements:
Must be strong in C++. Must have worked with UNIX operating system.
Knowledge of following will be desired:
C, Perl, VoIP, SIP, Object Oriented design skills, IPSec, IKE, VxWorks.
Could you please forward this information among your students.
Interested students can send me their resume at abhat@acmepacket.com
Regards, Avinash Bhat
-
Dear Professor Fawcett:
Thank you very much for offering to post the requirements. Please do post the following,
it also contains the contact email address.
Entry Level Programming Positions for CS Graduates
The Murthy Law Firm seeks recent computer science graduates to fill two positions in their
Owings Mills, Maryland (a NW suburb of Baltimore) location. Qualified, interested candidates
should send their resumes, accompanied by cover letter, to hr@murthy.com with the subject line:
Software Position – Software Tester OR Software Position – Programmer Analyst.
1. Software Tester
We are looking for an entry-level graduate for this position. This candidate is expected to have a Masters in Computer Science or Computer Engineering, with a GPA of over 3.6, with an interest in a career in Quality Assurance. He/she should have completed coursework in Visual Studio .NET 2005, SQL Server 2005, and Quality Assurance. No prior corporate experience is required. The candidate will be screened for aptitude and .NET skills. The successful candidate will be expected to design, create and run automated as well as manual test suites for proprietary software.
2. Programmer Analyst
We are looking for an entry-level graduate for this position. This candidate is expected to have a Masters in Computer Science or Computer Engineering, with a GPA of over 3.6, and have completed coursework in Software Design and Development, Visual Basic, and Visual Studio .NET 2005, SQL Server 2005. No prior corporate experience is required. The candidate will be screened for aptitude and .NET skills. The successful candidate will be expected to design and develop programs in VB.NET and perform other daily maintenance tasks.
Thank you, and Best Regards,
Subha
-
Hello Prof. Fawcett
Hope you are doing well. Life @ Microsoft is exciting (as always). I am mailing you in regards to a few open positions we have in our team. We are looking for SDEs and SDETs with a strong programming background for a new project in Windows Core Networking. Please let me know if you know of students from SU who might be able to fill this position. The position description (below) was written for experienced candidates but we are willing to consider college hires as well. I would be happy to take resumes and set up interview loops for suitable candidates.
Thanks very much.
Sincerely, Ganesh
Ganesh Srinivasan
Program Manager
Windows Core Networking
ganesh.srinivasan@microsoft.com
Position Description:
The Windows Core Networking Team is looking for an individual that will help deliver a high performance and scalable network subsystem based on the latest hardware offload technologies. The areas of interest are broad and include effective real-world application throughput, CPU utilization, end-to-end latency, effective use of multi-core and power consumption. A key responsibility will be to partner with PM's to select/define the metrics on which the team will focus to ensure success for the desired markets.
Analyzing and predicting benchmark results will be a primary role. As such this candidate must have or be able to quickly develop a deep understanding of OS performance functionality such as memory accesses and caching, and context switching. In addition to acquiring a thorough understanding of the Windows networking components. In general a successful candidate must be able to quickly grasp new code.
A good understanding of the benchmarks will be needed to acquire, configure, and interpret test results. Knowledge of optimal application behavior will be used to provide guidance to the industry as they modify their applications to take advantage of our system. There will be times of focused work with the IHV’s and their devices. Lab personnel will be available to support this work.
The ideal candidate will have a strong desire to understand complex system behaviors with respect to performance and find ways to identify how individual components of the system affect the overall system performance. As such I am looking for a senior individual with a proven track record of effectively working with many constituents.
This is a unique position within the Core Networking Team. This will be a great opportunity to deliver on the promise that Windows is the most performant and scalable server class operating system.