Youry's Blog

Youry's Blog

Archive for the ‘Teaching’ Category

The value of university

leave a comment »

 And the winners are…

Four-year non-vocational American colleges, ranked by alumni earnings above expectation

Our first-ever college rankings Oct 29th 2015, 15:41 BY D.R.

from http://www.economist.com/blogs/graphicdetail/2015/10/value-university

Rank▲ %ile College State Expected earnings Median earnings Over/Under
1 99 Washington and Lee University VA
$55,225
$77,600
$22,375
2 99 Babson College MA
$65,172
$85,500
$20,328
3 99 Villanova University PA
$60,457
$73,700
$13,243
4 99 Harvard University MA
$74,469
$87,200
$12,731
5 99 Bentley University MA
$62,329
$74,900
$12,571
6 99 Otis College of Art and Design CA
$29,565
$42,000
$12,435
7 99 Lehigh University PA
$64,562
$76,800
$12,238
8 99 Alderson Broaddus University WV
$31,769
$43,400
$11,631
9 99 Texas A & M International University TX
$33,695
$45,200
$11,505
10 99 California State University-Bakersfield CA
$37,028
$48,100
$11,072
11 99 Holy Family University PA
$39,411
$49,900
$10,489
12 99 University of the Pacific CA
$56,479
$66,400
$9,921
13 99 University of Saint Joseph CT
$39,827
$49,700
$9,873
14 99 Bucknell University PA
$59,356
$68,800
$9,444
15 98 University of Pennsylvania PA
$68,816
$78,200
$9,384
16 98 Georgetown University DC
$74,098
$83,300
$9,202
17 98 Drake University IA
$46,904
$55,700
$8,796
18 98 Rensselaer Polytechnic Institute NY
$73,065
$81,700
$8,635
19 98 California Lutheran University CA
$44,364
$52,900
$8,536
20 98 California State University-Stanislaus CA
$36,381
$44,900
$8,519
Sources: US Department of Education; The Economist

AMERICAN universities claim to hate the simplistic, reductive college rankings published by magazines like US News, which wield ever-growing influence over where students attend. Many have even called for an information boycott against the authors of such ratings. Among the well-founded criticisms of these popular league tables is that they do not measure how much universities help their students, but rather what type of students choose to attend each college. A well-known economics paper by Stacy Dale and Alan Krueger found that people who attended elite colleges do not make more money than do workers who were accepted to the same institutions but chose less selective ones instead—suggesting that former attendees and graduates of Harvard tend to be rich because they were already intelligent and hard-working before they entered college, not because of the education or opportunities the university provided.

On September 12th America’s Department of Education unveiled a “college scorecard” website containing a cornucopia of data about universities. The government generated the numbers by matching individuals’ student-loan applications to their subsequent tax returns, making it possible to compare pupils’ qualifications and demographic characteristics when they entered college with their salaries ten years later. That information offers the potential to disentangle student merit from university contributions, and thus to determine which colleges deliver the greatest return and why.

The Economist’s first-ever college rankings are based on a simple, if debatable, premise: the economic value of a university is equal to the gap between how much money its students subsequently earn, and how much they might have made had they studied elsewhere. Thanks to the scorecard, the first number is easily accessible. The second, however, can only be estimated. To calculate this figure, we ran the scorecard’s earnings data through a multiple regression analysis, a common method of measuring the relationships between variables.

We wanted to know how a wide range of factors would affect the median earnings in 2011 of a college’s former students. Most of the data were available directly from the scorecard: for the entering class of 2001, we used average SAT scores, sex ratio, race breakdown, college size, whether a university was public or private, and the mix of subjects students chose to study. There were 1,275 four-year, non-vocational colleges in the scorecard database with available figures in all of these categories. We complemented these inputs with information from other sources: whether a college is affiliated with the Catholic Church or a Protestant Christian denomination; the wealth of its state (using a weighted average of Maryland, Virginia and the District of Columbia for Washington) and prevailing wages in its city (with a flat value for colleges in rural areas); whether it has a ranked undergraduate business school (and is thus likely to attract business-minded students); the percentage of its students who receive federal Pell grantsgiven to working-class students (a measure of family income); and whether it is a liberal-arts college. Finally, to avoid penalising universities that tend to attract students who are disinclined to pursue lucrative careers, we created a “Marx and Marley index”, based on colleges’ appearances during the past 15 years on the Princeton Review’s top-20 lists for political leftism and “reefer madness”. (For technically minded readers, all of these variables were statistically significant at the 1% level, and the overall r-squared was .8538, meaning that 85% of the variation in graduate salaries between colleges was explained by these factors. We also tested the model using 2009 earnings figures rather than 2011, and for the entering class of 2003 rather than 2001, and got virtually identical results.)

After feeding this information into the regression, our statistical software produced an estimate for each college based exclusively on these factors of how much money its former students would make. Its upper tiers are dominated by colleges that emphasise engineering (such as Worcester Polytechnic) and attract students with high SAT scores (like Stanford). The lower extreme is populated by religious and art-focused colleges, particularly those in the south and Midwest. This number represents the benchmark against which we subsequently compare each college’s earnings figure to produce the rankings. The bar is set extremely high for universities like Caltech, which are selective, close to prosperous cities and teach mainly lucrative subjects. If their students didn’t go on to extremely high-paying careers, the college would probably be doing something gravely wrong. Conversely, a southern art school with low-scoring, working-class students, such as the Memphis College of Art, might actually be giving its pupils a modest economic boost even though they earn a paltry $26,700 a year a decade after enrolment: workers who attended a typical college with its profile would make about $1,000 less.

The sortable table above lists the key figures for all 1,275 institutions in our study that remain open. The first column contains the median post-enrolment salary that our model predicts for each college, the second its actual median earnings, and the third its over- or under-performance. Clicking on a university pops up a window that shows the three factors with the biggest effect on the model’s expectation. For example, Caltech’s forecast earnings increase by $27,114 as a result of its best-in-the-country incoming SAT scores, another $9,234 thanks to its students’ propensity to choose subjects like engineering, and a further $2,819 for its proximity to desirable employers in the Los Angeles area.

In an unexpected coincidence, it has come to our attention that the Brookings Institution, a think-tank in Washington, happens to have published its own “value-added” rankingsusing the scorecard data on the exact same day that we did (October 29th). Although their approach was broadly similar to ours, they looked at a much larger group of universities (including two-year colleges and vocational schools), and they appear to have used a very different set of variables. Above all, the Brookings numbers regard a college’s curriculum as a significant part of its “value add”, causing the top of its rankings to be dominated by engineering schools, and the bottom by art and religious institutions. In contrast, we treated fields of study as a reflection of student preferences, and tried to identify the colleges that offer the best odds of earning a decent living for people who do want to become artists or study in a Christian environment. Similarly, the Brookings rankings do not appear to weight SAT scores nearly as heavily as ours do, if they count them at all: colleges like Caltech and Yale, whose students subsequently earn far more money than those of an average university but significantly less than their elite test results would indicate, sit at the very bottom of The Economist’s list, whereas Brookings puts them close to the top.

It is important to clarify how our rankings should be interpreted. First, the scorecard data suffer from limitations. They only include individuals who applied for federal financial aid, restricting the sample to a highly unrepresentative subset of students that leaves out the children of most well-off parents. And they only track students’ salaries for ten years after they start college, cutting off their trajectory at an age when many eventual high earners are still in graduate school and thus excluded from the sample of incomes. A college that produces hordes of future doctors will have far lower listed earnings in the database than one that generates throngs of, say, financial advisors, even though the two groups’ incomes are likely to converge in their 30s.

Second, although we hope that our numbers do in fact represent the economic value added by each institution, there is no guarantee that this is true. Colleges whose earnings results differ vastly from the model’s expectations might be benefiting or suffering from some other characteristic of their students that we neglected to include in our regression: for example, Gallaudet University, which ranks third-to-last, is a college for the deaf (which is why we excluded it from our table in print). It is also possible that highly ranked colleges simply got lucky, and that their future students are unlikely to make as much money as the entering class of 2001 did.

Finally, maximising earnings is not the only goal of a college, and probably not even the primary one. In fact, you could easily argue that “underperforming” universities like Yale and Swarthmore are actually making a far greater contribution to American society than overperformers like Washington & Lee, if they tend to channel their supremely talented graduates towards public service rather than Wall Street. For students who want to know which colleges are likely to boost their future salaries by the greatest amount, given their qualifications and preferences regarding career and location, we hope these rankings prove helpful. They should not be used for any other purpose.

CORRECTION: An eagle-eyed commenter has alerted us that all 20 listed campuses of Pennsylvania State University appeared with the same median earnings. Other keen observers have noted irregularities regarding a handful of colleges with similar names in different states. In response, we have reviewed the scorecard database, consolidated all colleges with multiple campuses but a single listed salary figure, identified and distinguished universities with overlapping names, re-run the regression, and revised the rankings and the text of this blog post. As a result, the top and bottom ten colleges published in our print issue no longer exactly match the ones in these updated rankings. However, the vast majority of universities moved by no more than a handful of places. Additionally, we have removed references to “graduates” and “alumni”, to reflect the fact that the scorecard’s income data do not distinguish between graduates and students who enrolled but did not graduate.

Advertisements

Written by youryblog

April 5, 2016 at 10:35 PM

How To Get Hired — What CS Students Need to Know & A Future for Computing Education Research

leave a comment »

  1. A Future for Computing Education Research

    http://cacm.acm.org/magazines/2014/11/179828-a-future-for-computing-education-research/fScreenshot 2015-01-20 21.38.45ulltext

  2. from http://www.kegel.com/academy/getting-hired.html

I’ve hired dozens of C/C++ programmers (mostly at the entry level). To do that, I had to interview hundreds of candidates. Many of them were woefully poorly prepared for the interview. This page is my attempt to help budding software engineers get and pass programming interviews.

Contents

What Interviewers are Tired Of

A surprisingly large fraction of applicants, even those with masters’ degrees and PhDs in computer science, fail during interviews when asked to carry out basic programming tasks. For example, I’ve personally interviewed graduates who can’t answer “Write a loop that counts from 1 to 10” or “What’s the number after F in hexadecimal?” Less trivially, I’ve interviewed many candidates who can’t use recursion to solve a real problem. These are basic skills; anyone who lacks them probably hasn’t done much programming.

Speaking on behalf of software engineers who have to interview prospective new hires, I can safely say that we’re tired of talking to candidates who can’t program their way out of a paper bag. If you can successfully write a loop that goes from 1 to 10 in every language on your resume, can do simple arithmetic without a calculator, and can use recursion to solve a real problem, you’re already ahead of the pack!

What Interviewers Look For

As Joel Spolsky wrote in his excellent essay The Guerrilla Guide to Interviewing:

1. Employers look for people who are Smart and Get Things Done

How can employers tell who gets things done? They go on your past record. Hence:

2. Employers look for people who Have Already Done Things

Or, as I was told once when I failed an interview:

3. You can’t get a job doing something you haven’t done before

(I was interviewing at HAL Computers for a hardware design job, and they asked me to implement a four-bit adder. I’d designed lots of things using discrete logic, but I’d always let the CPU do the math, so I didn’t know offhand. Then they asked me how to simulate a digital circuit quickly. I’d been using Verilog, so I talked about event simulation. The interviewer reminded me about RTL simulation, and then gently said the line I quoted above. I’ll never forget it.)

Finally, you may even find that

4. Employers Google your name to see what you’ve said and done

What This Means For You

What the above boil down to is: if you want to get a job programming, you have to do some real programming on your own first, and you have to get a public reputation, however minor, as a programmer. Don’t wait for your school to teach you how to design and program; they might never get around to it. College courses in programming are fine, probably even necessary, but most programming courses don’t provide the kind of experience that real programming gives, and real employers look for real programming experience.

Malcolm Gladwell wrote in Outliers,

… Ten thousand hours of practice is required to achieve the level of mastery associated with being a world-class expert — in anything.

Seems about right to me. I don’t know how many hours it takes to achieve the level of mastery required to program well enough to do a good job, but I bet it’s something like 500. (I think I had been programming or doing digital logic in one way or another for about 500 hours before my Dad started giving me little programming jobs in high school. During my five years of college, I racked up something like several hundred hours programming for fun, several hundred more in CS/EE lab courses, and about two thousand on paid summer jobs.)

But How Can I Get Experience Without a Job?

If you’re in college, and your school offers programming lab courses where you work on something seriously difficult for an entire term, take those courses. Good examples of this kind of course are

Take several of this kind of course if you can; each big project you design and implement will be good experience.

Whether or not you’re in college, nothing is stopping you from contributing to an existing Open Source project. One good way to start is to add unit or regression tests; nearly all projects need them, but few projects have a good set of them, so your efforts will be greatly appreciated.

I suggest starting by adding a conformance test to the Wine project. That’s great because it gives you exposure to programming both in Linux and in Windows. Also, it’s something that can be done without a huge investment of time; roughly 40 work hours should be enough for you to come up to speed, write a simple test, post it, address the feedback from the Wine developers, and repeat the last two steps until your code is accepted.

One nice benefit of getting code into an Open Source project is that when prospective employers Google you, they’ll see your code, and they’ll see that it is in use by thousands of people, which is always good for your reputation.

Quick Reality Check

If you want a quick reality check as to whether you can Get Things Done, I recommend the practice rooms at topcoder.com. If you can complete one of their tasks in C++ or Java within an hour, and your solution actually passes all the system tests, you can definitely program your way out of paper bag!

Here’s another good quick reality check, one closer to my heart.

Good luck!

Please let me know whether this essay was helpful. You can email me at dank at kegel.com.

Shameless Plug

I’m looking for a few good interns. If you live in Los Angeles, and you are looking for a C/C++ internship, please have a look at my internship page.

Links

Written by youryblog

January 17, 2015 at 6:40 PM

OC’s Computer Information Systems degree answers employer and graduate needs

leave a comment »

 
 Chris Kluka
Choosing the Bachelor of Computer Information Systems degree program at Okanagan College was a no-brainer for Chris Kluka – and it has been a decision that paid off in spades with career opportunities.

Kluka had taken post-secondary studies at other Canadian institutions, but the credential and education he received didn’t fully meet his needs or expectations.

“I’m interested in infrastructure and systems management,” says Kluka, who is now an IT Systems Infrastructure Architect at Daemon Defense Systems Inc. in Winnipeg.

“I looked at programs across the country and chose Okanagan College. The other program I took and others I looked at had the wrong focus. They were focused on Programming or Computer Science. I wanted a program focused on IT systems implementation and management,” he says.

With the benefit of the College giving him transfer credits for much of his post-secondary education taken elsewhere, Kluka entered the Computer Information Systems (CIS) diploma program at Okanagan College. The CIS diploma is a two-year credential that ladders into the College’s four-year Bachelor of CIS degree. At the College, he was also able to integrate some courses from the Network and Telecommunications Engineering Technology program as electives.

Between diploma and degree, Kluka found work with a Kelowna-based company, FormaShape, where he started as a junior network administrator. Eight months later he was IT Manager. Then he came back for his degree.

After graduation, it was a return to Manitoba, where career opportunities have been unfolding. For the past two years, he has been with Daemon Defense Systems Inc. and the contracts the company has secured have afforded him considerable experience in a variety of environments.

“I’ve been leading architecture design and deployment in projects such as the Canadian Museum of Human Rights, network redevelopment in the Winnipeg Convention Centre and the Investors Group Field, home of the Winnipeg Blue Bombers. Those three projects alone represent 6,300 network drops and $20 million worth of servers and storage architecture. I have designed and implemented the IT systems architecture for three of the largest projects in the province in the last two years. ”

The College’s degree program has a solid reputation among employers, explains Department Chair Rick Gee. Demand for graduates may also partially explain the high ratings given the program by students in independent surveys conducted by the Provincial government. A review of five years of graduate data shows a 94 per cent employment rate, average annual earnings of $56,000 and 91 per cent of surveyed students reporting they were satisfied or very satisfied with their education.

“There will be continued demand for diploma and degree graduates from our programs,” says Gee. “Our lives are becoming increasingly dependent on information systems, and that bodes well for the people who can understand and manage them.”

For more information on the degree or diploma programs in Computer Information Systems, visit okanagan.bc.ca/bcis.

Written by youryblog

September 6, 2014 at 2:26 AM

Re-Post: The End of Agile: Death by Over-Simplification

with one comment

The End of Agile: Death by Over-Simplification

Copy for my students from: http://effectivesoftwaredesign.com/2014/03/17/the-end-of-agile-death-by-over-simplification/

(I afraid to lose it) Posted on by

hypeThere is something basically wrong with the current adoption of Agile methods. The term Agile was abused, becoming the biggest ever hype in the history of software development, and generating a multi-million dollar industry of self-proclaimed Agile consultants and experts selling dubious certifications. People forgot the original Agile values and principles, and instead follow dogmatic processes with rigid rules and rituals.

But the biggest sin of Agile consultants was to over-simplify the software development process and underestimate the real complexity of building software systems. Developers were convinced that the software design may naturally emerge from the implementation of simple user stories, that it will always be possible to pay the technical debt in the future, that constant refactoring is an effective way to produce high-quality code and that agility can be assured by following strictly an Agile process. We will discuss each one of these myths below.

Myth 1: Good design will emerge from the implementation of user stories

Agile development teams follow an incremental development approach, in which a small set of user stories is implemented in each iteration. The basic assumption is that a coherent system design will naturally emerge from these independent stories, requiring at most some refactoring to sort out the commonalities.

However, in practice the code does not have this tendency to self-organize. The laws governing the evolution of software systems are that of increasing entropy. When we add new functionality the system tends to become more complex. Thus, instead of hoping for the design to emerge, software evolution should be planned through a high-level architecture including extension mechanisms.

Myth 2: It will always be possible to pay the technical debt in the future

The metaphor of technical debt became a popular euphemism for bad code. The idea of incurring some debt appears much more reasonable than deliberately producing low-quality implementations. Developers are ready to accumulate technical debt because they believe they will be able to pay this debt in the future.

However, in practice it is not so easy to pay the technical debt. Bad code normally comes together with poor interfaces and inappropriate separation of concerns. The consequence is that other modules are built on top of the original technical debt, creating dependencies on the simplistic design decisions that should be temporary. When eventually someone decides to pay the technical debt, it is already too late: the fix became too expensive.

Myth 3: Constant refactoring is an effective way to produce code

Refactoring became a very popular activity in software development; after all it is always focused on improving the code. Techniques such as Test-Driven Development (TDD) allow refactoring to be performed at low risk, since the unit tests automatically indicate if some working logic has been broken by code changes.

However, in practice refactoring is consuming an exaggerated amount of the efforts invested in software development. Some developers simply do not plan for change, in the belief that it will always be easy to refactor the system. The consequence is that some teams implement new features very fast in the first iterations, but at some point their work halts and they start spending most of their efforts in endless refactorings.

Myth 4: Agility can be assured by following an Agile process

One of the main goals of Agility is to be able to cope with change. We know that nowadays we must adapt to a reality in which system requirements may be modified unexpectedly, and Agile consultants claim that we may achieve change-resilience by adhering strictly to their well-defined processes.

However, in practice the process alone is not able to provide change-resilience. A software development team will only be able to address changing system requirements if the system was designed to be flexible and adaptable. If the original design did not take in consideration the issues of maintainability and extensibility, the developers will not succeed in incorporating changes, not matter how Agile is the development process.

Agile is Dead, Now What?

If we take a look at the hype chart below, it is sure that regarding Agile we are after the “peak of inflated expectations” and getting closer to the “trough of disillusionment”.

gartner-hype-cycle

Several recent articles have proclaimed the end of the Agile hype. Dave Thomas wrote that “Agile is Dead”, and was immediately followed by an “Angry Developer Version”. Tim Ottinger wrote “I Want Agile Back”, but Bob Marshall replied that “I Don’t Want Agile Back”. Finally, what was inevitable just happened: “The Anti-Agile Manifesto”.

Now the question is: what will guide Agile through the “slope of enlightenment”?

In my personal opinion, we will have to go back to the basics: To all the wonderful design fundamentals that were being discussed in the 90’s: the SOLID principles of OOD, design patterns, software reuse, component-based software development. Only when we are able to incorporate these basic principles in our development process we will reach a true state of Agility, embracing change effectively.

Another question: what will be the next step in the evolution of software design?

In my opinion: Antifragility. But this is the subject for a future post

What about you? Did you also experience the limitations of current Agile practices? Please share with us in the comments below.

Written by youryblog

August 29, 2014 at 3:07 PM

Good teaching related papers

leave a comment »

  • Confession of an Ivy League teaching assistant: Here’s why I inflated grades December 13, 2013 http://is.gd/8LjohN
    We all cared about teaching and fairness. But the real reason so many of us inflate grades is to avoid students complaining. Anything less than an A- would result in endless emails, crying during office hours, or calls from parents. One student once cornered me and said: “I hope you’re happy you’ve destroyed my chance at Goldman and ruined my life.”

Written by youryblog

December 20, 2013 at 5:25 PM

Posted in Interesting, Teaching

Tagged with