Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I dropped out of college (CS) instead, also because of an episode related to this.

An assignment for an exam was to make a simple library management program in pascal (cataloging books, leading, receiving them back etc.), mainly to test our understanding of pointers.

Even if we also had Macs at the university, we've been asked to make a command line app. But, since I was studying the Mac OS gui programming by myself, I made a graphical application instead.

The assistant professor that was evaluatings our assignment didn't believe that I had made it myself. She probably couldn't understand it herself (but, obviously, all the relevant functions were separated from the gui code). So she asked me to rewrite everything from scratch as a command line application in a couple of hours in front of her.

I managed to do it but I was really really pissed off. Shortly thereafter I started working and dropped out.



You ignored the requirements and demonstrated expertise in the wrong area, IMO.

In a similar situation, I wrote the required command-line app, but it handled queries, basically parsing to an expression tree predicate.

Of course, it doesn't matter now.


> You ignored the requirements and demonstrated expertise in the wrong area, IMO.

The assignment was about implementing the functionalities of a simple library management app. And it was explicitly to test using pointers, linked lists ecc.

The requirements were fully implemented. And all the queries were handled by functions which were completely separated from the gui code.

Basically, instead of a textual menu (1 - borrow, 2 - return etc.) you had a Mac Os menu and the results were presented inside fields in a window instead of a textual output.

If I had to convert the program to a textual interface by editing my source (instead of doing everything from scratch) it would have took me 5 minutes (or less). IIRC the code was already there and simply commented out.

Keep also in mind that our lab was full of Macs (50-60 machines) with just a PC (which, btw, has been used by a guy who had made the app with his own advanced textual interface - something like ncurses - and who had a similar fate as mine). So I thought it was a plus to use the native gui of the OS we were using all the time.

> Of course, it doesn't matter now.

Of course. It happened 17 years ago :-)


In my experience, CS professors like automating the grading process as much as possible. It's conceivable that your assistant professor was upset she couldn't just run your app through the grading script.


We had something similar at Purdue. In fact, we were frequently given an example 'correct' program whose output we needed to match exactly. It took me much longer to get register assignment in my compilers' class to match the professor's results than it took me to get it 'correct'.

This gets to interfaces though. I don't know about the gp, but if the assignment specifies a particular interface then that becomes a part of the spec. It doesn't matter that you made a more advanced interface, if it doesn't match the required interface it's wrong.


What's incredible is that a lot of the time, GUI-based applications are only a smidgen more complicated than their command-line counterparts. Sad that your professor didn't seem to know this.


as he mentionned, this happened 17 years ago. While I never programmed the original Mac OS, I know that Win16 GUI programming wasn't the simplest thing ever at all - it was considerably more complicated that parsing a command line; you had to deal with message queues, pass pointers around with no nice OO interfaces.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: