prof. daniel ernst february 7th, 2011 success in computer science cs 146 the big picture in computer...
Post on 18-Dec-2015
215 Views
Preview:
TRANSCRIPT
PROF. DANIEL ERNSTFEBRUARY 7TH, 2011
SUCCESS IN COMPUTER SCIENCE
CS 146 The Big Picture in Computer Science
Success in Computer Science
As an undergraduate CS student, you want a roadmap to success
Issue: There are many components to success in CS: Curricular Activities (Courses) Co-Curricular Activities Preparation for Post-Undergraduate Life Overall Planning
Curricular Activities
Curricular components Course and Program Selection Studying / Course Work Grades
Course Selection
Many major courses decided for you There are still some choices
CS Electives – how to choose? Explore current interests, possible areas of specialization Take courses useful for likely jobs Take courses to help prepare for graduate school (e.g. CS 450)
CS Comprehensive - ENGL 305 or ENGL 308 or CJ 202? ENGL 305 – Communicating Scientific Subjects to General Audiences
(communication –writing) Also counts toward GE 3xx-level requirement (Three 3xx-level courses)
ENGL 308 – Scientific Communication for Expert Audiences (communication – writing) Also counts toward GE 3xx-level requirement (Three 3xx-level courses)
CJ 202 – Fundamentals of Speech (communication – speaking) GE Courses – Strategies and Tactics
Take courses that you’re interested in Take courses that fit best with your major (and minor) program(s) Take courses that meet multiple requirements to free up other slots
Program Selection
Which major? Computer Science – Comprehensive (63 cr.)
Broadest array of computer science courses More mathematics, required Physics for science lab sequence Requires some other courses (communication, ethics) under GE
Computer Science – Software Engineering (39 cr.) Similar amount of computer science to CS-Comp.
Only differences: not CS 462 (Networks), one less CS elective Less mathematics, required Physics for science lab sequence Requires minor (24 cr.)
Computer Science – Computer Engineering (68 cr.) A computer science degree with an emphasis on computer hardware and
engineering issues Useful for working in computer hardware industry, positions including
hardware verification and testing Computer Science – GIS (68 cr.)
Combination of computer science + study of geographic information systems
Program Selection (2)
Which minor, if needed? Information systems
Complementary to CS, added understanding of business Mathematics
Additional problem solving tools for toolset, some practical applications (e.g. probability and statistics, digital signal processing)
Any area that you can combine with computer science E.g. Biology, Physics, Criminal Justice (Forensics), maybe
Materials Science in future? Any area that you’re interested in
E.g. Music, Foreign Language, others…
Studying and Course Work
Read assigned materials Several computer science instructors work primarily with PPT slides;
don’t forget how to read technical material!Review periodically
Helps anchor and integrate material Important with comprehensive nature of CS
Study with others (at least some of the time) Especially if you’re not well-disciplined at studying on your own Try to study with others at or above your level – this helps you to rise
to their levelStudy actively
Try to ask “what if” questions, e.g. Does this algorithm really work (correctly / efficiently)? What other approaches are there here? Is there a better approach possible?
Studying and Course Work
Participate in class actively Ask questions Comment where appropriate based on your own
experienceUnderstand what the instructor is looking for
Read carefully, solve the problem asked, not the problem you would like to see asked
Be complete, thorough and organizedUse a variety of problem solving techniques
(more later)
Grades
GPA review How is GPA calculated? How is GPA used?
Honors for semester, degree Internship and full-time job applications
Perhaps the most important factor!
Team Exercise Effect of bad first year Effect of one bad course on semester GPA
C if averaging B’s F if averaging B’s
Effect of one bad semester after three good semesters
First Question – Difficulty of Recovering from Bad Start
Assume 15 credits per semesterIma Student figures he can “catch up later” and
doesn’t need to take school seriously the first yearHas two semesters averaging 2.3 What does Ima need to average in his sophomore
year to raise his GPA up to 3.0 by the end of that sophomore year? Remember: many internship employers require/prefer a
GPA of 3.0
Divide into teams of 2-3, work this out
First Question – Answer
Freshman: 30 x 2.3 = 69.0 // 2.3 = C+Sophomore: 30 x ? = ?
Total Desired (by end of sophomore year)60 x 3.0 = 180.0
180.0 – 69.0 = 111.0111.0 / 30 = 3.70 // 3.7 = A-
Ima has a lot of pressure for the second yearLikelihood of accomplishing this is small
Second Question – Effect of One Bad Semester After Good Start
Assume 15 credits per semesterIma Student starts strong for three
semesters, but has a bad fourth semester due to family and health issues
Has three semesters averaging 3.2Fourth semester GPA is 2.5What is Ima’s GPA after four semesters?
Again, divide into teams of 2-3, work this out
Second Question – Answer
First 3 semesters: 45 x 3.2 = 144.0 3.2 GPA = ~B+ (a little less)
Fourth semester: 15 x 2.5 = 37.5
Total (by end of sophomore year)60 credits, 181.5 grade points
180.1 / 60 = 3.025 // 3.025 = B
Ima is still above the 3.0 threshold
Questions for Reflection
When is it easier to change/have an effect on your GPA – earlier or later in your university career?
Which semesters matter most in establishing a good GPA? Consider the mathematical reasons, but also
psychology and other factorsHow are you going to use this information in
your university career?
Grades (2)
How to get good grades in CS courses? Complete all assignments Do your share of the work (or more) on team
assignments Team projects will often ask for each member of the
group to anonymously evaluate all members’ participation
Make sure you learn the material; don’t leave unanswered questions Computer Science is very comprehensive!
Co-Curricular Activities
Co-Curricular Activities Club participation / leadership Part-time work Study abroad Internships Job Search
Club Participation and Leadership
Computer Science clubs Student ACM
ACM = Association for Computing Machinery, primary professional organization for computer scientists
Student club – social, service, educational, networking with other students, possible employers
Professional organization – separate student membership, access to magazine and CS literature
WITS (Women In Technology and Science) Similar – social, service, educational, networking All interested students welcome
Benefits of membership Meet other CS students Activities Opportunity to run for and be a club leader, help guide club in future
year(s)
Part-Time Work
Benefits Generate funds for school
But remember your primary goal – education Work should never be an excuse for not doing well in
school Obtain additional CS-relevant experience (if a job that
utilizes CS skills: system administrator, web developer, help desk staff, etc.)
Issues Can interfere with course work, especially group
meetingsOverall
Make sure part-time work is compatible with your course work
Study Abroad
Benefits Learning about another culture Experiencing the diversity of the world
Issues In past, often just GE credits Now, are some institutions that offer CS courses that may
transferRecommendations
Talk to your adviser early (freshman year) if you are interested in study abroad
Second-semester sophomore year is the best semester for study abroad Required course: one elective (CS 268 or CS 278) that can be
taken another semester, doesn’t interfere with prerequisite chain
Internships
Temporary work (often full-time during a summer, possibly including another semester) with an employer Can be for pay, credits, both Often summer after junior year, but can be after sophomore or even freshman year if you
have experience that matches employer needs Benefits
One of the important accomplishments in the eyes of companies hiring for full-time positions A good experience (from the employer’s perspective) on an internship is often the gateway to
a full-time job offer Opportunities to explore internships
CS Career Breakfast and UWEC Career Fair (late September) Internship Mania (February) Through Career Services online listings
Prerequisites Have a resume prepared, reviewed by CS faculty and Career Services
Often WITS workshops on this in fall before UWEC Career Fair In some cases, minimum GPA requirements (e.g. 3.0)
If want credit, must work with Dr. Jack Tan (CS Internship Coordinator) – do this in advance
Job Search
Necessary to be pro-active Can’t wait for employers to come to you
Same opportunities as for internships: CS Career Breakfast and UWEC Career Fair (late September) Internship Mania (February) Through Career Services online listings Also other contacts:
Employers speaking at CS 396 (Junior Seminar) Employers met through talks, club events, etc. Personal contacts
Prerequisite Again, having a good resume is key Also want strong recommendations from faculty May be minimum GPA requirements (e.g. 3.0) here too
Job in CS
Many different possibilities Consider areas previously discussed
Application vs. systems Major CS employers
Marshfield Clinic (Marshfield, WI) Great Lakes Higher Education (Madison/Eau Claire, WI) Liberty Mutual Insurance Company (Wausau) Northwestern Mutual Insurance Company (Milwaukee) 3M Corporation (St. Paul, MN) IDEXX Systems (Eau Claire)
Other employers of CS students IBM (Rochester, MN) Menards / Midwest Manufacturing (Eau Claire) McKesson Surgical/Medical (Minneapolis) C.H. Robinson (Minneapolis) Silicon Logic Engineering (Eau Claire) Many others…
Graduate School
Approximately 5-10% of CS students go directly on to graduate school in CS
Worth considering if interested in teaching, research, or advanced/focused work
See: http://www.cs.uwec.edu/~wagnerpj/talks/GradSchool.ppt for more information (Student ACM talk given by Dr. Dan Ernst and Dr. Paul Wagner of UWEC CS)
Will need recommendations from faculty
Job in Other Area?
Always possible to use CS as a supplement to a job in another field
Students have gone on to jobs such as: Teaching English in foreign countries Document translation Web design
Issue Easy to get stale technically, may limit future options However, CS knowledge is always helpful
Planning
Planning includes: Considering options Making choices Being an active participant in your undergraduate
education Organizing your time Thinking ahead
Considering Options
Choices are made out of all available optionsMake sure you don’t limit your optionsExamples:
Student not attending class and not doing well Student not attending class but doing well in class –
later issues Student not attending class but not officially dropping
Goal: leave yourself more options where possible
Making Choices
Carefully consider each option for: Advantages Disadvantages Other implications
Consciously choose and act on the option you prefer Ownership translated to success
Being Active
How you can you be active in your CS education?
Many ways: Active participation in class Active consideration on choices for major, minor, CS
electives, GE courses Active consideration of co-curricular options
While making sure that all choices reasonably fit within your schedule
Talk to instructors, understand the course requirements What accomplishments expected? What participation expected?
Organizing Your Time
Treat studying and review like a class Set aside standard periods of time each week to work
on your coursesFor team projects, communicate with team
members to identify common times to meet regularly Requires flexibility and cooperation
Budget time for everything, including co-curricular interests
Thinking Ahead
Your undergraduate career is a “knapsack problem” Knapsack problem – famous CS optimization problem
Many objects of different weights and values (not proportionate); all have some value...
How to determine the optimal set of objects to put in your knapsack/backpack that will give you the most value while staying within a given weight limit?
We really need a “forward advising” system to supplement degree audits Backward advising – how does what you’ve done fit into a
degree plan? Forward advising – what should you do and when should you
do it to successfully complete a degree program?
Thinking Ahead (2)
Putting it all together Consider your options regularly Develop a plan early, but be ready to change it if
necessary (and reconsider it regularly) Develop the discipline for completing course work,
participating in class, and active learning that will allow you to succeed in CS
Make sure you keep your options open Don’t back yourself into a corner with no/few options
Thinking Ahead (3)
Key Timeline Items – Sample Schedule Freshman year
Do well in your courses! Consider exact major, minor, clubs, work, study abroad, act on some…
Join SACM and/or WITS Sophomore year
Continue to do well Develop your resume Study abroad 2nd semester if desired Run for office in club
Junior year Continue to do well Update resume, investigate internship possibilities Apply for internships Do internship – summer
Senior year <you get it…> Update resume, investigate full-time job possibilities Apply for full-time job Graduate, start that job…
Ada Lovelace
Born Augusta Ada Byron:Only (legitimate) child of the famous poet Lord Byron.
Her father left when she was 1 month old, died when she was 9.
Her mother, fearful that Ada would also get the “poet gene”, immersed her in mathematics from an early age.
Analyst, Metaphysician, and Computer Scientist(?)
Training and Family
By 17, she was an accomplished Mathematician Among her tutors was Augustus De Morgan
At that time, she met Charles Babbage, who was impressed with her intellect and they began corresponding regularly.
In 1835, at 19, she married William King, who became the first Earl of Lovelace.
They had 3 children, born between 1836 and 1839.
All indications were that she “ran the show”.
The Analytical Engine
In 1834, Babbage came up with the design of the “Analytical Engine”. His Parliamentary sponsors wouldn’t fund its creation
because he hadn’t finished the Difference Engine yet.In 1842, Italian mathematician Luigi
Menebrea wrote a memoir (in French) about Babbage’s Analytical Engine.
Babbage asked Ada Lovelace to do the translation of Menebrea’s work to English, with annotations.
Ada’s Notes
Over the course of the next year, she performed the translation, but also appended many of her own notes.
The Notes, when completed, were longer than the original text, and included striking observations about the Analytical Engine. Most commonly cited: An algorithm to compute Bernoulli
Numbers using the Analytical Engine – considered by many to be the “first computer program”.
Ada saw far more potential from the machine than Babbage did, and she was better at articulating it.
Legacy
Died of cancer in 1852Considered by many to be the
“First Computer Programmer” Some claim that she was also much more involved in the
design of the Babbage engines than was previously believed.
The US Department of Defense’s official language is called “Ada”
Since 1998, the British Computer Society has given out a prestigious award in her name
Ada Lovelace Day – March 24th.
top related