18th Biannual CS Retreat Spring 2011 Every_semester@Reading_Day (May 4th 2011) Recap The 18th CS retreat was held on a combined reading + snow replacement day which made for challenging scheduling for faculty and administrators. Joe Leung proposed a process for course assessment. Sarah Vandermark overviewed the innovative advisement + professional development framework that has been developed. Alex Gerbessiotis surveyed the state of the field with his (un)usual and dazzling command of metrics. Andrew Sohn and Jon Kapleau addressed the lower level undergraduate problem-solving and language landscape. Chengjun reviewed research at the undergraduate level and OCC transfer student Kaitlin Lackey recalled her positive experience in CS. List of speakers and topics 0945-950: 0950-1000: 1000-1040: 1040-1100: 1100-1120: 1120-1140: 1140-1215: 1215 -1235: 1235-12:55: Dean Narain Gehani Acting Chair Mike Baltrush Joseph Leung Alex Gerbessiotis Sarah Vandermark Andrew Sohn Jonathan Kapleau Intermission for Lunch Chengjun Liu Kaitlin Lackey - Introductory Remarks Introductory Remarks Proposed Curriculum Review State of Discipline CS@US, CS@NJIT Professional Development Sequence CS288 Programming Practice CS Language Landscape in Lower Level - Undergraduate Research in CS - Undergraduate Viewpoint on CS Contacts cs_faculty@njit.edu ; cs_lecturers@njit.edu ; barry.cohen@njit.edu ; narain.gehani@njit.edu ; serena.branson@njit.edu ; kaitlinlackey19@yahoo.com ; sarah.vandermark@njit.edu ; megan.t.summers@njit.edu ; angel.j.bell@njit.edu ; kathy.james@njit.edu ; george.olsen@njit.edu ; kathleen.price@njit.edu ; michael.p.bieber@njit.edu ; michael.halper@njit.edu ; Proposed Review of CS Curriculum - Prof. Joseph Leung After brief introductory remarks by Dean Gehani and Interim Chair Mike Baltrush, a late request by Prof. Leung to discuss a curriculum proposal was obliged. Dean Gehani had asked Joseph to think about possible ways of improving the CS curriculum. In response, Joseph asked to address the retreat about what might be called "Quality of Program" issues. His proposal is to perform a type of rapid selfassessment in the Fall semester this year. The assessment would initially address graduate courses, then, later, undergraduate courses. Joseph proposed brief 15 minute overviews of one course per week, presented by the/a course instructor to the department at a weekly meeting. Based on this faculty would identify updates and/or changes to the courses. Alex Gerbessiotis recommended the process begin with core courses. Barry Cohen thought the process would clarify what was happening in courses, their 1 interconnections and the programming experience expected. He suggested a tentative format for the presentations. The department Chair and the CS faculty will address this matter more formally in the Fall. Note: Because of scheduling constraints for faculty, a last minute change in the schedule was made, with Sarah Vandermark's presentation being moved before Alex Gerbessiotis' State of the Department and Field address. Professional Development Sequence and CO-OP - Sarah Vandermark Sarah Vandermark spoke about the new format for interacting with CCS students. This approach strongly depends on the newly developed sequence of professional development courses CS 107, CS 207, and CS 407, which are required for all CCS students. Each course is one credit and the advisors, Sarah and Megan, meet with the students once weekly. In addition to the topical content of the courses, they also provide a major advantage in that the advisors get to know the students early in the program, on a one-on-one basis, and much more closely than had been the case previously. Each advisor meets 75 students over their (three) sections. Sarah believes she is able to get the students to learn how to advise themselves. An important outcome is that because of the advising opportunities the classes present, there are fewer registration and advising problems. Sarah plans to revamp CS 107 so it involves more group projects so students gain experience in working in team and group environments, improving their associated social skills. CS 207 currently emphasizes fundamental career and professional development capabilities like communication skills, resume writing, and interviewing and uses among other techniques mock interviews. All of these skills are profoundly related to ABET educational requirements that previously have been inadequately covered in the program(s). These innovations represent a major self-improvement in our academic process. Advisor Load becomes an issue with the teaching requirements for these sections. Sarah mentioned that the timing scenario is to run CS 107 in the Fall semester, CS 207 in the Spring semester, and CS 407 as a Junior level course which could be split between the Fall and Spring semesters to even the teaching course load. One of Sarah's fundamental objectives, partly motivated by her own work experience at Northeastern University in Boston, is to create a culture where CCS students "want to do CO-OP". The key objective is to dramatically increase the number of students taking CO-OP. Half the students who do take CO-OP are eventually hired at the position. According to Sarah's analysis, the basic barrier to higher CO-OP rates has been simply lack of knowledge. This is being rectified as a side-effect of the professional development courses which greatly expand student awareness of these opportunities, their benefits and how to go about making them happen. Sarah's objective is to increase the number of COOP students so that within three years an average of 100 students out of the entire population of CCS undergraduates will take CO-OP. Concerning the opportunity for advanced education, Alexander Gerbessiotis observed it is important to inform students in these courses of the traditional deadlines for GRE's if they intend to pursue graduate studies and the possibilities of Ph.D. level education. At the graduate level, Kathy Price remarked on opportunities for Practical Training. 2 State of the Program - Prof. Alex Gerbessiotis Alex presented his usual meticulously researched analysis of the academic and job situation for Computer Science. US News' widely cited ranking ranked NJIT overall as 139th in US in 2011 while 115th in 2010, illustrating how the ranking is subject to major changes with slight perturbations in the underlying data. A key factor in undermining NJIT's US News ranking is its low 17% four-year graduation rate (compared for example to 65% for College of NJ, 50% for Rutgers NB and 30% for Stevens), NJIT being 4th from the bottom of almost 30 NJ universities listed! This single factor constitutes 25% of the US News and World Report score on which ranking is based. Ali Mili remarked that, given the visibility and impact of these rankings and their sensitivity to possibly slight changes in the inputs, it's worth exploring modest internal improvements or tactics that could disproportionately affect the rankings. In another major ranking, the Chinese ARWU survey ranked NJIT as tied with schools like NYU, Rice, Edinburgh and University of Montreal. The appeal of the computing profession remains very high with correspondingly remunerative salaries. According to surveys at cnbc.com software engineering is ranked as the best job in America. Relating salaries and academic programs, the web site payscale.com ranks colleges based on the reported salaries of their alumni (but beware its unnervingly restrictive license agreement that affects its use). In terms of starting salaries for engineering degrees, payscale.com ranked computer science fairly close to other major engineering degrees, with the exception of petroleum engineering which was off the charts in terms of starting salaries, close to twice those of other engineering fields. Remarkably, NJIT was ranked 11th among US engineering schools by payscale.com, with Harvey Mudd (a third of whose students are National Merit scholars and which is rated best undergraduate U.S. engineering program among nondoctoral institutions), Caltech and MIT as the three highest ranked in the same ranking. NJIT was ranked 5th among top state universities in the same respect. The position of system administrator had the highest salary for computer administration jobs (at over 130K per annum). CS employment prospects remain strong. After a slight dip in 2008-09, the National Assoc. of Computer Consultant Businesses statistics show the number of positions is almost back to its historic high in October 2008. To gain a sense of current regional demand for software positions, Alex recommended checking indeed.com (for example, enter: CS Newark jobs with 25 mile radius, as the search criterion). The indeed.com site has some interesting data visualizations for examples of which we refer to slides on Alex's attached presentation. Alex also references the website naceweb.org (National Association of Colleges and Employers). That site provides extensive information on the job market for college-educated individuals, with special articles, surveys, job outlook reports and so on. You can find interesting tidbits there such as that employers (currently) hire 40% of their new hires from former interns. Other interesting topics considered by Alex included expected competencies for prospective employees by major employers like Google, Facebook and Twitter. Enrollment in academic computing programs is strong. The Taulbee Survey shows a 10% increase in CS enrollment with a 15% increase in female enrollment. Alex's presentation has detailed historic data and projections on national and NJIT enrollments. The most notable point is that NJIT MS CS new students will be UP, other categories being slightly down or the same. Projected enrollment for Fall 2011 is: 320+ for BS CS, 201+ for MS CS, and 50 for PhD CS, about 30 up in total from last year. 3 CS 288 Intensive Programming Practicum - Prof. Andrew Sohn Andrew Sohn was enlisted to teach CS 288 Intensive Programming because of last minute changes in the teaching schedule. The problems he used for the course were selected from an intensive computer science course at Stanford, though one given to Stanford freshmen CS majors. After his recent experience he says he is inclined to rename the course "moderate to weak programming" instead of its current title. His underlying focus was teaching problem-solving in computing rather than language skills per se. Examples included shell scripting and implementation of Linux commands, intelligent search, web processing problems that entailed traversing the DOM (Document Object Model) during real-time retrieval of web pages and extracting features of the code (related to understanding the operation of web crawlers), simple chat application, socket programming, etc. Languages ranged from Bash to C (40%), Python (20% - a Python DOM library was used), PHP, MySQL, XML, et al. According to Andrew 80% of the students (3/4 of whom were juniors and seniors, even though the course is nominally sophomore level) were ill-prepared, unable to implement even routine algorithms like tree-traversal, while the remaining 20% were up to the challenge of designing, planning, developing and implementing solutions to reasonably challenging problems. Part of the pedagogical problem is that students violate the order in which they are supposed to take courses, like taking the presumably terminal capstone course before CS 288! Subsequent discussion involved course content and sequencing, Barry Cohen noting the presumed focus of CS 288 and whether it utilized C or C++, which appeared to be disputed. Alex Gerbessiotis remarked on the curricular locus of topics like tree traversal, covered somewhat in CS 114 but addressed more deeply in CS 435, after CS 288. The sequencing and breakout of topics among these courses appears to need review, and perhaps modified and standardized. Andrew believed the take-home message of his experience was that a significant majority of the students lacked understanding of the fundamentals, and so addressing that should be the at the heart of any efforts at CS curricular improvement. Post-retreat, Jim McHugh mused on the underlying difference of opinion between Barry and Andrew on how to best address the challenges we face in instruction in programming. On the one hand, it seems Barry focuses on the failure of conventional approaches to successfully teach programming principles and skills to the mass of students and maintain their interest in the field; while Andrew addresses the need for challenging problem solving experience, which is currently under-realized and which, when presented, only the best students seem able to successfully tackle. There seems to be roughly a 70-30 (or 80-20) percentage split between the student populations addressed. The introductory python course nurtured by Barry particularly suits the 70% mass population, at least in respect to its manner of introducing programming (which is distinct from its roadmap and communications objectives). Andrew's efforts at problem-solving and programming escalation work with a 30% elite population (though the idea is to eventually extend this to a majority of students). Both the Cohen and Sohn strategies seem appropriate for different 'parameter regimes' of student capability. While resolving the dilemma presented by a bifurcated student population is problematic, we might benefit from a sort of unified Coh'n-Sohn viewpoint that explicitly confronts one root issue: how to deal effectively with vastly different student levels. 4 CS Language Landscape in Lower Level - Prof. Jonathan Kapleau Jonathan Kapleau, prompted by his own background in philosophy, began his presentation by underscoring that "you can't think without language". Language-wise the lower level landscape covers: CS 100 (Python) and CS 113-114 (Java). In CS 280 (Programming Language Concepts) he expects students to gain command of the language they don't know well (Java if they know C++ and C++ if they know Java). To expose them to C, he "throws" C at them, with sample C programs. Concepts like function pointers emphasized by Andrew Sohn are required for the class projects. In Jonathan's version of CS 288 he focuses on C (as opposed to specifically C++), the Bash shell, and advanced programming techniques. Ali Mili inquired about the software prerequisites for the discrete math related courses CS 241 and CS 341 (Foundations of Computer Science I and II) which require CS 114 and CS 280 respectively. Undergraduate Research in CS - Prof. Chengjun Liu Chengjun Liu is a member of the Institute Undergraduate Research Committee. He mentioned a number of funding opportunities available to support undergraduate research. Five (only) were made available this year through a provost funding initiative. Interestingly, beginning this year Yehoshua Perl has a grant from the NLM (National Library of Medicine, under NIH) which provides funding for 10 undergraduate students. Chengjun also noted that John Federici has arranged for two student projects supported by CACI, a major IT support company based in Arlington. Chengjun observed that he himself encourages projects with a research angle in his undergraduate AI course. Ali Mili asked Chengjun if he was aware of how CS support for undergraduate research compares with that of other departments but Chengjun was not privy to the statistics. Alex Gerbessiotis observed that supplemental requests for generous undergraduate support can be made as a component of NSF grant applications. Jason Wang observed that such support is about 6K per annum for undergraduates. Undergraduate Viewpoint on CS - Kaitlin Lackey - CS senior Kaitlin Lackey transferred to NJIT from OCC (Ocean County College). Her transition to NJIT from the county college went well; she contrasted the treatment of C++ in the county college, which was mainly syntax oriented, versus the more advanced approach at NJIT. Kaitlin chose the combined community college + NJIT route because of the cost benefits, especially from the first two years, and because she liked NJIT's program. She currently works in the research group of Yehoshua Perl and Jim Geller where she has learned a great deal about group research. Kaitlin believes this experience has been highly beneficial, preparing her for working in groups in "the real world", a capability she thinks will prove invaluable. In terms of coursework, Kaitlin liked the structure of Ted Nicholson's CS 490 where 70% of the grade was based on a group development project. Three students were involved in each project. The team's responsibilities included coming up with the idea for a project that was substantial enough to take the whole term to develop. Kaitlin felt that the CS program would benefit from more courses like this. Though she had some exposure to Linux, she would like to have had significantly more, believing it would provide students better access to courses like CS 433 Intro to Linux Kernel. 5 Appendices I. II. III. IV. V. Alex Gerbessiotis Andrew Sohn Jonathan Kapleau Chengjun Liu Kaitlin Lackey State of Discipline CS@US, CS@NJIT CS288 Programming Practice CS Language Landscape in Lower Level Undergraduate Research in CS Undergraduate Viewpoint on CS 6 Computer Science Alex. Gerbessiotis Alex. Gerbessiotis, CS Department CS RETREAT: Spring 2011 Payscale.com Payscale.com Alex. Gerbessiotis, CS Department CS RETREAT: Spring 2011 Alex. Gerbessiotis, CS Department Best Jobs in America http://www.cnbc.com/id/40950977?slide=11 Alex. Gerbessiotis, CS Department Rankings :CS, NJIT Alex. Gerbessiotis, CS Department Rankings 2011: US News &WR NJIT CS Engineering IS Math Physics Chemistry 2010 2011 115 91 86 98 133 RNP 139 91 92 98 133 RNP USNWR: http://grad-schools.usnews.rankingsandreviews.com/best-graduate-schools/top-computer-scienceschools/rankings Glossary: RNP: Ranked but rank not published, NR: Not Ranked Alex. Gerbessiotis, CS Department What undermines NJIT’ NJIT’s rankings Alex. Gerbessiotis, CS Department Rankings 2010/2011 NJIT CS IS Math AppMath Physics Chemistry ECE Note: ARWU: NRC: Glossary: (international) (national) ARWU NRC NR 5252-75* NR NR NR NR NR NR 6666-104/128 (3rd qrtl) 9696-119/128 (3rd qrtl) NR 1818-23/34(3rd qrtl) 9090-142/162 (3rd qrtl) 135135-169/180(4th qrtl) 6161-100/128 (3rd qrtl) * Ranked 76-100 previously http://www.arwu.org/SubjectCS2010.jsp World Ranking http://chronicle.com/article/NRC-Rankings-Overview-/124721/ US Ranking RNP: Ranked but rank not published, NR: Not Ranked , USNWR: US News &World Report NRC:Natnl Research Council ARWU: Academic Rankings of World Universities (Shanghai U –related) Alex. Gerbessiotis, CS Department ARWU (Chinese) Rankings CS ranks 52-75 in 2010 vs 76-100 in 2009 CS@NJIT tied with NYU, Rice, Poly Turin, Edinburgh, Chinghua, UCSC, UWUW-Madison, U Virginia, U Montreal, TU Munchen, Eindhoven IT, Korea AIST, UF CS@NJIT beats BU, McGill, BarIlan, PSU, Shanghai JiaoTong, ETH Lausanne, HK PolU, CathLeuven, MSU,NTUST Alex. Gerbessiotis, CS Department Payscale.com: Best Engin. Colleges Alex. Gerbessiotis, CS Department Payscale.com: Best NE US Colleges Ranks Ranks 1-12 1-12 Alex. Gerbessiotis, CS Department Payscale.com: Best NE US Colleges Ranks Ranks 13-31 13-31 27th 27th Alex. Gerbessiotis, CS Department Payscale.com: Best State Universities Alex. Gerbessiotis, CS Department Payscale.com: Best State Universities Alex. Gerbessiotis, CS Department Payscale.com: Top NJIT degrees Alex. Gerbessiotis, CS Department Taulbee Survey! Alex. Gerbessiotis, CS Department Taulbee Summary 266 Institutions queries (= 184 CS + 30 CE + 22 IS + 29CANADA) 195 Institutions responded (= 150 CS + 12 CE + 18 IS + 15CANADA) Most data are for Fall 2009-Spring 2010, except for new stdnts (Fall 2010) [NJIT did not respond] Highlights of the summary BS degrees BS/CS degrees BS/CS degrees (women): BS enrollment [Full report to follow in Mid May 2011] UP +11% (includes CS/CE/IS, US/CAN) USA +9% vs 5.5% 2009 CAN UP 15% 14% (CE 10%, IS 14.5%) USA UP +10% CAN DOWN -8% Alex. Gerbessiotis, CS Department Taulbee Summary BS Degrees 9008 up (F09-S10) 12501=9008+1592+1900 female:14% MS 6851 up PhD Remarks 1501 same vs +6%,-7%,-8% resp 9542=6851+765+1926 1772=1501+271 (the year before) 21% 19% 1214%, 2119% 2009/2010change PhD Enrollment: 12666 in CS (15038=12666CS+1378CE+994IS) PhD NewStudents: 2561 in CS (2962=2561CS+216CE+185IS) Averages: (per Dept) NJIT Degrees Enrollment New Stdnts Degrees Enrollment: New Stdnts BS: 60, BS:250, BS: * * BS: 45 BS: 301 BS: 72+34 MS: 45, MS: * MS: *** MS: ~ 80 MS: ~ 200 MS: ~90 Alex. Gerbessiotis, CS Department PhD:10 PhD:84 PhD:17 PhD: 3-5 PhD: ~50 PhD: 3-7 SECTION 1 EMPLOYMENT PROSPECTS for Computer Science students Alex. Gerbessiotis, CS Department Payscale.com: Best Degrees Alex. Gerbessiotis, CS Department Indeed.com Alex. Gerbessiotis, CS Department Indeed.com Alex. Gerbessiotis, CS Department Indeed.com Alex. Gerbessiotis, CS Department Indeed.com: Administrator jobs Alex. Gerbessiotis, CS Department Naceweb: Spring 2011 salary survey of new graduates http://www.rpi.edu/dept/cdc/NACE%20Spring%202011%20Salary%20Survey.pdf Average Average salary salary per per major major ## $[2011] $[2011] $[2010] $[2010] Change Change Alex. Gerbessiotis, CS Department CS jobs 2011: Google skills BS/MS in Computer Science or related field/degree, and/or equivalent work experience A solid foundation in CS, with strong competencies in data structures and algorithms Fluency in one or more of: C, C++, Java Familiarity with one or more of: Python, Perl, Shell, PHP Expertise in analyzing and troubleshooting large-scale distributed systems Knowledge of IP netw, net analysis, perf. and app. issues using standard tools like tcpdump Strong skills in C and/or C++, scripting languages, Python and Shell highly desirable BS in Computer Science or related technical discipline, or equivalent experience. Large systems software design and development experience, with extensive knowledge of Unix/Linux. Coding skills in C or JavaScript/AJAX, database design and SQL, distributed or concurrent systems, and/or knowledge of TCP/IP and network programming are a plus. A solid foundation in computer science, with strong competencies in data structures, algorithms, and software design. Expertise in data structures, algorithms and complexity analysis Alex. Gerbessiotis, CS Department CS jobs 2011: Facebook skills Pursuing a B.S. in Computer Science or equivalent experience preferred - M.S. or Ph.D. a plus Experience developing and debugging in C/C++ on *nix Experience building large-scale server applications and reliable software Experience with scripting languages such as Perl, Python, PHP, and shell scripts Experience in auction theory and/or machine learning Expert knowledge of algorithmic game theory, auction theory Ability to translate theoretical research into practical applications Knowledge of relational databases and SQL Prior experience with building platform technologies a plus Expertise in programming languages and/or compilers a plus High levels of creativity and quick problem solving capabilities Configuration and maintenance of Apache, memcached, Squid, MySQL, NFS, SSH, DNS, and SNMP Experience with Data warehousing architecture and data modeling best practicesl Knowledge of Hadoop, HBase and Hive highly preferred Alex. Gerbessiotis, CS Department CS jobs 2011: Twitter skills B.S. Computer Science or equivalent experience Experience securing large-scale web applications and APIs Strong programming capabilities two or more: C, C++, Assembly, Python Experience with secure development and debugging in Ruby, C, Python, JavaScript, and Java Extensive experience with data warehouse environments Demonstrated combination of DBA, analytical, and engineering skills. Familiarity with Map/Reduce-style architectures like Hadoop. Strong algorithms and data structures background Good software engineering skills (e.g. unit testing, code reviews, design documentation) Familiarity with machine-learning techniques and information retrieval Strong background in statistics and probability Knowledge of TCP/IP, HTTP, security, storage, and LAMP stack Alex. Gerbessiotis, CS Department Employment History : Computing Jobs @ US NACCB Feb Feb Sep Feb Oct Feb Oct Mar Mar Dec Dec 2011 2010 2009 2009 2008 2008 2007 2007 2006 2002 2001 : : : : : : : : : : : 3,998,500 3,838,100 3,810,900 3,940,000 4,046,000* 3,948,000** 3,740,000 3,620,000 3,560,000 3,369,000 3,527,000 BLS 3,472,000 3,455,000 BLS : US Bureau of Labor Statistics *amended from 3,916,000 in retreat F08 **amended ded from 3,800,000 in retreat F08 NACCB: National Assoc. of Computer Consultant Businesses **amen Alex. Gerbessiotis, CS Department SECTION 2 Computer Science Education @USA Alex. Gerbessiotis, CS Department 2010 TAULBEE Survey+HISTORY http://www.cra.org Newly Declared CS Majors BS degrees Median per Department median per Dept Academic Year Median per Department CS enrollment Degrees Granted F98 14000 108 97/98 50000 360 7900 45 F00 15958 100 99/00 56000 300 10200 58 F04 10900 50 82 03/04 50000 260 532 14000 71 188 F05 7952 42 63 04/05 40000 220 385 11808 60 164 F06 7798 44 67 05/06 34898 200 313 10206 52 99 F07 7915 46 66 06/07 30000 170 271 8021 43 74 F08 8400 50 58 07/08 32000 170 264 7406 37 62 F09 9380 55 67+45 08/09 33000 190 287 7000 40 45 F10 72+34 CS/NJIT 301 Taulbee Survey (March 2010/May 2010) Alex. Gerbessiotis, CS Department SECTION 3 Computer Science Education @NJIT Alex. Gerbessiotis, CS Department CS HISTORICAL DATA BS MS PHD TOTAL NJIT2010 CCS2010 6102 916 2398 566 426 69 8926 1551 2010 2009 2008 2007 2006 2005 2004 2003 2002 2001 301+25 (?) 287 264 271 313 385 532 730 908 1025 198 227 307 392 424 446 463 549 585 643 52 51 53 52 51 57 66 64 56 43 551 (actual) 565 624 715 788 888 1061 1343 1549 1711 Alex. Gerbessiotis, CS Department SECTION 4 Enrollment Fall 2011 (projections) Alex. Gerbessiotis, CS Department April 20 Summary NJIT BS : NJIT MS : NJIT PhD: Apps DOWN Apps UP Apps DOWN NJIT Enrollment: CS BS: CS MS: CS PhD: CS Enrollment: New students UP New students UP New students DOWN UP Apps DOWN Apps UP Apps slightly UP UP UP New students DOWN (but solid) New students UP New students may be SAME/DOWN {CS Dept or CCS enrollment another matter} Alex. Gerbessiotis, CS Department April 20 BS Applications UNDERGRADUATE PROGRAMS Applications Accepts @NJIT Deposits -10%, @NJIT -3%, @NJIT +15% @CCS -10%, @CCS -20%, @CCS -10% @CS @CS -15%, @CS -30% 4000 470 240 =, 2500 270 140 550 80 30 Transfer Apps: Up 10% Transfer Accepts: Up 20% Alex. Gerbessiotis, CS Department Graduate Applications GRADUATE PROGRAMS Applications MSApps@NJIT +30%, PhDApps@NJIT = Acceptances MSAcc@NJIT PhDAcc@NJIT 67 +25%, -50% MSApps@CCS PhDApps@CCS +20% +50% MSAcc@CCS PhDAcc@CCS 12 +12% -50% MSApps@CS PhDApps@CS +30% +20% MSAcc@CS PhDAcc@CS +20% -20%?? 4000 560 1000 135 700 110 1800 476 Alex. Gerbessiotis, CS Department 300 12 BS programs: April 20 projections Program FTF Tra RA Actual 2010 Fall numbers CS 72 34 9 Binfo 2 1 1 C&B 2 1 0 IS 1 3 4 B&IS 3 12 1 HCI 1 0 0 Web&IS 1 5 1 IT 43 26 16 Undecide 25 0 0 CCS -tot 150 82 Total 115 4 3 8 16 1 7 85 25 32 264 FTF Tra RA Total Projections for FALL 2011 53 37 ? 90 2 2 ? 4 1 2 ? 3 4 ? 4 4 8 ? 12 0 ? 0 4 7 ? 11 43 36 ? 79 20 0 ? 20 136 96 Alex. Gerbessiotis, CS Department ? 232 MS, PhD programs:April 20 projections Actual Fall2010 Projected Fall 2011 CS-PhD IS-PhD 5 5 3 1 Roughly the same to down Down CS-MS Binfo-MS C&B-MS SoftE-MS IS-MS B&IS-MS IT&AS-MS 92 8 6 4 66 22 41 110 9 7 5 67 22 45 UP 15-20% same same same same same same CCS-total NJIT-total 251 893 270 1100-1200 slightly up UP MS, DOWN PhD! Alex. Gerbessiotis, CS Department ENROLLMENT Program Projected Fall 2011 BS MS PhD Total BS Fall2010 MS PhD Total CS BINFO C&B SE IS B&IS EM HCI WIS IT IT&AS 320+ 210+ 8 25 10 10 0 16 55 170 55 65 ? ? ? 9 435 100 301 9 12 0 65 47 7 9 7 435 0 198 32 13 11 176 60 0 0 0 0 69 50 0 15 - 580+ 332016 240120 ? ? 9 435 100 Alex. Gerbessiotis, CS Department 52 0 0 0 17 0 0 0 0 0 0 551 41 25 11 258 107 7 9 7 435 69 Computer Science Alex. Gerbessiotis, CS Department CS288 Intensive Programming Practice Andrew Sohn Wed, 5/4/2011 Objectives intensive programming The Reality • Weak to moderate practice • Compared to the current programming standard (standard to be defined separately) • Had to cut down the topics by 20% after real-time in-class programming Test1 (total four tests including final) Original schedule - intensive • • • • • • • • • • • • • • • Week 1 Introuction to Linux and Bash shell scripting Week 2 Introuction to C Week 3 Sorting - simple slow methods such as selection sort to moderate merge and quick sort Week 4 Sorting - fast radix for both integer/float and internal/external record sorting Test 1: Programming test: 1-2:30 pm, Mon, 2/14/2011 Week 5 Searching - depth first, breadth first using two problemss Week 6 Searching with intelligence - heuristic-based best first, implement GUI to demonstrate the result Week 7 Linux command - implementing a Linux command such as grep or diff Week 8 Linux command continues Test 2: Written test: 1-2:30 pm, Thur, 3/10/2011 Week 9 Audio processing - internals of MP3 encoder/decoder Week 10 Audio processing - implementing an encoder/decoder Week 11 Web processing - wget, DOM manipulation, extraction, XML generation Week 12 Web processing - simple file-based or mySql DB construction Test 3: Programming test: 1-2:30 pm, Thur, 4/14/2011 Week 13 Web processing - reading, plotting and presenting data using GUI. Week 14 Networking - socket programming Week 15 - Final exam, time and location to be announced at the Registra Adjusted schedule - moderate • • • • • • • • • • • • • • • Week 1 Introuction to Linux and Bash shell scripting Week 2 Bash shell scripting and Introuction to C - pointers Week 3 C structure handling with linked list Week 4 Sorting - simple slow methods such as selection sort to moderate merge and quick sort Week 5 Sorting - moderate merge sort, fast radix for integer Test 1: Programming test: 1-2:30 pm, Mon, 2/14/2011 Week 6 Sorting - radix sort for floats; Searching - depth first, breadth first Week 7 Searching - breadth first, heuristic-based best first Week 8 Searching with intelligence, implement GUI to demonstrate the result; Linux command implementing a Linux command such as grep or diff Test 2: Written test: 1-2:30 pm, Thur, 3/10/2011 Week 9 Linux command continues Week 10 Linux command continues Week 11 Web processing - wget, DOM manipulation, extraction, XML generation Week 12 Web processing - simple file-based or mySql DB construction Test 3: Written test: 1-2:30 pm, Thur, 4/14/2011 Week 13 Web processing - reading, plotting and presenting data using GUI. Week 14 Networking - socket programming Week 15 - Final exam, time and location to be announced at the Registrar Real-World Problems • Directory tree traversing • Sorting – selection, merge, radix – integer and float • Search – depth, breadth, best, branch-bound, A*, and bidirection. • Web – downloading stock market pages in realtime, parsing DOM, data extraction, XML generation, data injection to mysql database, selection from database, presentation to firefox, plotting graphs/charts in real-time • Simple talk (socket programming) Tools/Languages • Bash (10%) • C (40%) – mostly pointers, linked-lists, structure handling, function pointers • Python (20%) with list comprehension • PHP (10%) for dynamic pages, • mysql (10%) with multiple tables (a lot of tables) • DOM (5%) – level 1 for simplicity • Sockets (5%) – low level network programming • Some HTML, Java, XML. Results • • • • • Day 1: 39 students After Test1 (in-class programming): 30 After Test2: 23 After Test3: 23 (but some failing) Current status: --- + --- + --- Issues • Sophomore-level course • 80% - juniors (23) and seniors (8) out of 39 • Seniors (8) to graduate after this course • Many do not know how to traverse trees and some will graduate after this course Suggestions • Undergraduate curriculum needs to be overhauled – exigent situation – now! • 2/3 of our students have little fundamentals • Teach fundamentals, not flashy topics which give false impression about computer science • CS100 is counter productive – giving false impression that problem solving is simple CS Language Landscape in the Lower Level Jonathan Kapleau Purpose • To provide information about the current situation with regard to programming language instruction • To promote discussion of the merits of different programming languages as it relates to instruction CS 100: Roadmap to Computing • Current language of instruction: – Python • Introduction to problem solving and programming • Overview of the discipline CS 113: Introduction to Computer Science I • Current language of instruction: – Java • Introduction to programming in Java • Continuation of problem solving CS 114: Introduction to Computer Science II • Current language of instruction: – Java • Introduction to data structures and algorithms • Using data structures to solve problems CS 280: Programming Language Concepts • Current languages of instruction: – Java – C/C++ – Python • More advanced programming techniques • Introduction to language paradigms CS 288: Intensive Programming Practicum • Current languages of instruction: –C – Bash shell scripting • Even more advanced programming techniques Undergraduate Research NJIT undergraduate research program 10-week summer research program for current NJIT undergraduate students this summer. Goals: for improving student engagement and retention for a significant increase of undergraduate research activities at NJIT for complementing existing programs, such as the Ronald E. McNair Postbaccalaureate Achievement Program, for involving more of our undergraduate students in research experiences Number of summer research awards The program pilot that will run this summer has guaranteed funding for at least five students Provost Gatley is working with University Advancement to obtain additional funds so that more students can participate in the program this summer available for NJIT undergraduate students mentored by an NJIT faculty member Application Research Proposal Faculty letter of support submitted to UGResearch@njit.edu on March 31, 2011. Full details on the program can be found on my web site, http://www.njit.edu/provost/. Subject:UG cs research Date:Tue, 3 May 2011 11:33:45 -0400 From:Yehoshua Perl <yehoshua.perl@gmail.com> To:Liu, Chengjun <chengjun.liu@njit.edu> hi chengjun for your info we have this year again a grabnt for UG research from NLM ,employing about 10 students. -------- Original Message -------- Subject:Undergraduate research opportunity Date:Fri, 25 Mar 2011 16:07:43 -0400 From:Bracero, Isabel <bracero@ADM.NJIT.EDU> CC:Federici, John <Federici@ADM.NJIT.EDU>, Carpinelli, John <carpinel@ADM.NJIT.EDU> On behalf of Dr. Carpinelli Dear Member of the Undergraduate Research Committee: John Federici is arranging for CACI, an industry partner, to fund two student research projects, as described in the attached file. Please take a look at the two job descriptions in the file. The requested majors are just a guideline; qualified students in other majors should also consider applying for these positions. If you know any students who would be qualified and interested, please ask them to contact Prof. Federici (Federici@adm.njit.edu) directly. Also, please share this with your colleagues who might have qualified students for these positions. Going forward, efforts such as this could be a good complement to the summer undergraduate research program we are piloting this year. Whereas the students in the pilot program would propose their own projects, this opportunity proposes the projects and seeks students interested in working on them. Both strategies could be used to increase undergraduate research efforts at NJIT. I ask that you start thinking about how we could institutionalize activities such as this as part of the committee’s future work, so we can discuss this further at our next meeting. CS Senior Kaitlin Lackey Retreat Remarks Spring 2011 I did not grow up playing video games and writing programs. I didn’t even decide this is what I wanted to do until my second year of college. Coming to NJIT I felt very intimidated not only being a girl but being someone who didn’t really know much about programming or computer science. My lack of experience did not matter as much as I thought it would – the education I received here has more than made up for my lack of time involved in programming. Last week I was showing my Mom a project I worked on for a class and she said to me “You know I really feel like you’ve learned a lot in the past few semesters. When you first started at NJIT and during the first semester or so I was nervous for you but now it seems like you have learned so much and are prepared for a job.” I agree with her. When I transferred here, I knew a little C++ that I learned at community college. Now, two years later I have learned Java and C++ as well as how to manipulate a database using SQL and how to write web pages using HTML, JavaScript, CSS, and more. I have also had the opportunity to work with Dr. Perl and Dr. Geller’s research group within the Computer Science department at the SABOC research center. This opportunity has prepared me in a multitude of ways to enter the real world with what Professor Blank calls a J.O.B. degree. Working in the SABOC research center, I have developed my Java programming skills, learned how to work better in groups, and been able to experience the research and development process of a product first-hand. This type of experience is not something that you get in a classroom. In addition to complementing the Computer Science department, I would also like to make a suggestion. I took CS490 this semester and thought the structure of the class was great and I am looking forward to CS491 next semester. In this class 70% of the grade is a group project that I worked on with two other students. We started the project the first week of class and gave our final presentation of the project the last week of class. I think this kind of process has been beneficial to my education for many reasons. First, working with a group is always a good thing because this teaches you to interact with others, share your ideas, and to work with and add to other people’s code. Second, we had to come up with the idea for the project on our own – and this had to be something big enough for three people to work on for an entire semester. We also had deadlines to meet throughout the semester. The similarity of this class to a real world job is something that I think the computer science department needs more of. If possible, I think it would greatly benefit students if they had to take a class with this type of structure more than twice as a computer science requirement. I also think there should be more courses offered about the Linux operating system. There currently are two Linux classes offered by Computer Science – but they both have the same course description – one that looks pretty complicated for someone who has never used a Linux operating system. I have been on a few interviews recently for summer internships and at each one was asked if I had experience with the Linux operating system and I had to say no. I didn’t know that Linux was so prevalent in the “real world” of computer science. I think some sort of introductory course that gets students acquainted to using Linux and writing some small programs using it would be helpful and would make students more interested in courses like CS433. In conclusion, I am happy to receive my Computer Science degree from NJIT. As with any college or department within a college, there is definitely room for improvement. However, as I stated I believe the education I have received here at NJIT as well as my experience in a research group has well prepared me to enter the real world.