Hello World! CSE442

advertisement
Hello World!
CSE442
Course Summary
• A semester long group project
– You will develop software from idea to
implementation
• You have full freedom to choose your project
– Choose something you’re passionate about
• Informal course descriptions:
– “Put everything you’ve been learning to good use”
– “Show me something cool”
Course Expectations
• This is not a course on programming!
– You have been learning how to write code for
years
– Now you will apply your programming skills to
your own project
• There will be a lot of self-learning
– Being a good software engineer means constantly
teaching yourself the topics you need
– There is too much for us to teach everything in 4
years of college
Grading
• 12 point system
– 3 project submissions @ 2points each
– Project presentation
– 2 individual snag submissions
– 1 individual snag presentation
– Make a quality resume
– Create a LinkedIn profile
Letter Grading
Points
Course Grade
12
A
11
A-
10
B+
9
B
8
B-
7
C+
6
C
5
C-
4
D
0-3
F
No
•
•
•
•
•
No exams
No quizzes
No participation grade
No homework
No recitations
No Recitations
• All recitations are cancelled for this course
• Use this time to meet with your group at least
1 hour/week
• I wont always repeat Piazza posts in lecture
– You should be checking Piazza regularly
More so than most
• You’ll get out what you put in!
• Getting an A shouldn’t be very difficult in this
course
– Getting an A should be your minimum goal
– You can get so much more if you choose to
Baldy 19
• You should all have access to the lab
• Equipment can be used in the lab
– Oculus Rift
– Graphics processing machines
– Myo Armband
– etc.
• Most of the equipment is still in the mail..
• TA office hours will be in Baldy 19
Project Scope
• Projects must be large enough for a group of
computer science seniors working for an
entire semester
• Project ideas must be approved by me and I
will assess them for this single criteria
• I encourage you to work outside your comfort
zone
• There is no upper bound on project scope
– I will do my best to make it clear what needs to be
done to get full credit
Project Ideas
• Many of the suggestions I provided are
projects that I’ve wanted to do
– Never found the time to complete them
– In my experience, this is universally true for
anyone with programming experience
• I am giving you the time
– Work on the project you’ve been wanting to do
Project Logistics – Forming Groups
• You have full freedom to choose your own
groups
– int minimumGroupSize = 3;
• If you don’t want to choose your group:
– I will form groups based on your interests
– Interests will be collected via a Google form
– Target group size will be 4
– In some cases, I might merge you with an existing
group
• All groups will be finalized by September 12
Project Logistics – Forming Groups
• Use Piazza
– I recommend (some of you have) that you pitch
your project idea on Piazza to form a group
– The goal: All members of your group are
passionate about the project
• Just about guarantees that you’ll all end up with A’s
Project Logistics – The Pitch
• Each group must provide an electronic project
pitch by September 18
• Sell your project idea to a technical audience
– How would you pitch your idea to a VC?
• The pitch could be:
– A pdf outlining your idea
– A video
– A song?
• These pitches will be used to advertise the
class and your projects
Project Logistics – The Submissions
• 3 Submissions
• All submission must be of working code
– This includes the first submission
• Each will be a video demo of the software
uploaded to YouTube
– No supporting documents necessary
– No technical details required
– The video should sufficiently show what your software
does
– Videos should be concise
• If you’re unsure what to post, think KickStarter
Project Submissions
• These are rough guidelines for grading
– Projects will differ greatly and specific grading criteria
may be defined for each project
• Submission 1
– Demo a prototype that runs and gives an idea of what
the final product might look like
• Submission 2
– A demo of your software showing some functionality
that works
• Submission 3
– A demo of your final product
Project Logistics – The Presentation
• Each group must give a live presentation of their
project to the class (10-15 minutes)
– Can/should contain a demo of the final software
– Explain the technical details of your project
• Languages, libraries, hardware, etc.
• Unexpected difficulties encountered
• Anything else you’d like to share
• All group member must be present
– Not all have to talk
• Think Hackthon Presentation
GitHub
• We will use the UB-CSE organization to host all
projects
– Your group will create and maintain your own
repo in this organization
– Use your own GitHub accounts and you will be
added to UB-CSE
• If you choose not use UB-CSE, let me and the
TA’s know where your project is hosted
Project Logistics - Summary
• By the end of the semester you will have
– An electronic pitch of your project
– 3 videos showing the progress of your software
– Original software with real functionality
Sang Submissions
• Brief description of an issue you encountered
while working on your project
• Must describe something specific to your
individual effort on the project
• Should be < 1 page unless more space is
needed
– A paragraph or 2 can suffice
• Conversational tone
Snag Presentation
• Present one of your snag submissions to the
class
• < 5 minutes
• If you present an unresolved issue
– This can become a class debug session
• Individual presentations
Resumes
• Final resumes will be due October 5
– StemUp career fair will be October 7
• Resumes must be of high quality to receive
credit
• There will be 2 prior submissions for resumes
that you can use for feedback and revisions
– Take advantage of them
LinkedIn
• Create and populate a LinkedIn profile by
October 5
• Grading will not be as strict as it is for resumes
– Not all companies use LinkedIn, but they require
resumes
Day 1 Survey
• Optional
• If you haven’t already responded
– Do you want to be a Software Engineer?
Coming up
• Wednesday
– git and GitHub
• Friday
– Agile and Scrum
• The rest of the course
– Lessons in Software Engineering
– Guest Speakers
– Presentations by you
This is the New CSE442
Enjoy!
Download