Open Side Menu Go to the Top
Register
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** ** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **

09-08-2012 , 03:38 PM
Quote:
Originally Posted by daveT
I think due the generally intuitive flavor of imperative programming and the easy and enforced syntax of Python, I would most certainly consider Python the best language to show a total newb. Functional program exists to solve way too many esoteric problems.
There's definitely an argument for Python as the best language to start a programmer on. But I think you're being a bit unfair. Imperative programming often seems more intuitive because that's what most people are introduced to and that's what we have more exposure to. I don't really buy that its more intuitive than recursion for complete beginners (we might have even had this argument earlier in this thread).

The beauty of starting with something like Scheme (especially using something like Racket) is that you can explain the whole language to complete newbies in very little time. Compare it to something like Java where a first year class is never actually going to understand the most basic program:

Code:
public class Main {
  public static void main (String[] args) {
    System.out.println("Hello World")
  }
}
Python's obvious better but I think it still quickly grows in complexity faster than you can explain it to people.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-08-2012 , 03:54 PM
Quote:
Originally Posted by jjshabado
Depends on a lot of other stuff. If the only part of your resume related to programming is your minor in computer science - most people will discount it.

All things being equal with respect to the rest of a resume I'm probably going with someone that majored in CS over the business + minor in CS. Its definitely great when programmers understand business concerns but I don't know how much a major in business helps with that.

Edit: It might depend on your desired career path. If I were looking for a business candidate I think I would give a huge benefit to a candidate that had a minor in CS. Basically I look at a minor in CS as a huge benefit if you're looking at a career in whatever your major is in. Basic programming skills and knowledge seem highly useful to me.
I want to get a job in programming. Thing is, I have 2 years of school done and if i do major in business and minor in CS, 100% of my credits will count towards that degree and I'll be a 'real' junior. If I do the major in CS, maybe 20% of my credits will count towards that degree. I dont want to work in business but its probably the most general degree there is. fml.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-08-2012 , 03:56 PM
Yeah, that is kind of a lol hello world program as an introduction to programming

public vs private, classes, static methods, return types, arrays, namespaces and functions.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-08-2012 , 04:34 PM
Hey C# / Microsoft Dudes,

Someone sent me a database schema exported from VisualStudio. It's a giant XML file that begins like so:

Code:
<Schema Namespace="MyModel.Store" Alias="Self" Provider="System.Data.SqlClient" ProviderManifestToken="2008" xmlns:store="http://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator" xmlns="http://schemas.microsoft.com/ado/2009/02/edm/ssdl">
Are there are free tools that will allow me to convert this file into a graphical representation of the schema, showing the table names, column names, and foreign key relationships?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-08-2012 , 04:54 PM
i hear xslt is a fun language to work in.

*runs away*
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-08-2012 , 05:44 PM
Quote:
Originally Posted by Ryanb9
I want to get a job in programming. Thing is, I have 2 years of school done and if i do major in business and minor in CS, 100% of my credits will count towards that degree and I'll be a 'real' junior. If I do the major in CS, maybe 20% of my credits will count towards that degree. I dont want to work in business but its probably the most general degree there is. fml.
Ah. I don't really know how to maximize your life/credit EV here. What's the actual cost to you? I mean is it something like you can do the Business+CS degree in 2 years but a CS major is 3 years?

If so, I'd suspect the extra year of school is worth it.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-08-2012 , 06:48 PM
Quote:
Originally Posted by jjshabado
Ah. I don't really know how to maximize your life/credit EV here. What's the actual cost to you? I mean is it something like you can do the Business+CS degree in 2 years but a CS major is 3 years?

If so, I'd suspect the extra year of school is worth it.
2 years vs 3.5 years.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-08-2012 , 07:18 PM
Quote:
Originally Posted by jjshabado
There's definitely an argument for Python as the best language to start a programmer on. But I think you're being a bit unfair. Imperative programming often seems more intuitive because that's what most people are introduced to and that's what we have more exposure to. I don't really buy that its more intuitive than recursion for complete beginners (we might have even had this argument earlier in this thread).

The beauty of starting with something like Scheme (especially using something like Racket) is that you can explain the whole language to complete newbies in very little time. Compare it to something like Java where a first year class is never actually going to understand the most basic program:

Code:
public class Main {
  public static void main (String[] args) {
    System.out.println("Hello World")
  }
}
Python's obvious better but I think it still quickly grows in complexity faster than you can explain it to people.
You were a TA for first-year students, right? Did your college offer intro classes using both Racket and Java/C++?

Did you use this picture stuff:

http://docs.racket-lang.org/quick/index.html
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-08-2012 , 08:51 PM
Quote:
Originally Posted by Ryanb9
2 years vs 3.5 years.
Huh. Tough call. If you're honestly interested in programming the 3.5 years is probably worth it. I assume you'll get to take some of the more advanced courses - which can be quite interesting.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-08-2012 , 09:00 PM
Quote:
Originally Posted by daveT
You were a TA for first-year students, right? Did your college offer intro classes using both Racket and Java/C++?

Did you use this picture stuff:

http://docs.racket-lang.org/quick/index.html
For first year CS they offered a pure Java course and a Scheme for the first half java for the second half course. I've heard that since then they've also started offering a pure Scheme course with forays into C and a few other languages.

The thing I liked best about the Scheme/Java stream was that the end of the Scheme section was basically building objects in Scheme. I don't remember a lot of the details but it was basically a form of message passing and binding of functions. I remember finding it really cool even though I was a senior.

I don't remember using that particular picture stuff - but I think at the end of the course we did a little bit with pictures/images. The first couple weeks were with only a very limited subset of the scheme functionality so I don't think it supported drawing.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-08-2012 , 10:22 PM
Quote:
Originally Posted by jjshabado
Huh. Tough call. If you're honestly interested in programming the 3.5 years is probably worth it. I assume you'll get to take some of the more advanced courses - which can be quite interesting.
If you scroll down a bit at this link:
http://catalog.oregonstate.edu/Optio...34&majorid=139
To where you see the classes per term or w/e, what the **** honestly? Are most/all comp science degrees that specialized? All the business, lib arts, w/e, hell even economics degrees dont get specialized until junior year (at osu i mean).

Honestly tho, these computer science degrees look like you specialize/focus on compsci starting frosh year, this should not be legal.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-08-2012 , 10:24 PM
On an unrelated note, im using libgdx in java and it seems pretty tits, anyone else in here use it? basically you can write one program and it will work in java, android, and html5 or w/e
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-09-2012 , 02:46 AM
Quote:
Originally Posted by gaming_mouse
Hey C# / Microsoft Dudes,
Are there are free tools that will allow me to convert this file into a graphical representation of the schema, showing the table names, column names, and foreign key relationships?
c# express?

It's free. Doesn't have every feature, but a quick gamble.

http://www.microsoft.com/visualstudi...csharp-express
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-09-2012 , 11:25 AM
Quote:
Originally Posted by Ryanb9
On an unrelated note, im using libgdx in java and it seems pretty tits, anyone else in here use it? basically you can write one program and it will work in java, android, and html5 or w/e
i can't imagine it works well.... those things never do. we've been using appcelerator, and while it worked pretty well for iphone/android, eg, the mobile web version was completely unusable.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-09-2012 , 12:59 PM
Quote:
Originally Posted by Chips Ahoy
c# express?

It's free. Doesn't have every feature, but a quick gamble.

http://www.microsoft.com/visualstudi...csharp-express
chips,

thanks for the idea. i downloaded this, but i could find no import option to do what i need...
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-09-2012 , 01:32 PM
Lecture #3's mind blowing part:

Realizing that "wishful thinking" (he writes how he's going to use a procedure before writing it) is actually TDD.

How can you really write the functionality of something without knowing how you're going to use it? You have to "see" how to use it, and then implement it.

A concept like that is actually not that hard to imagine but the concept of TDD prior to really getting it is pretty foreign.

It's so sick how a 15 second clip in a video lecture can reverse how you think of a problem in such a drastic way.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-09-2012 , 01:45 PM
Does he go on to say that he writes the tests for his procedure? If not, that sounds like a cop out. "Did you write tests for your procedure?" "No, but I thought about it so we're good."
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-09-2012 , 01:54 PM
Quote:
Originally Posted by kerowo
Does he go on to say that he writes the tests for his procedure? If not, that sounds like a cop out. "Did you write tests for your procedure?" "No, but I thought about it so we're good."
the point is that one of the fundamental concepts behind TDD is just thinking about how what you write is going to be used before writing it. that is separate from the formal tests themselves. these lectures are from the 80s and formal TDD as it exists today wasn't around then, afaik, so it's unfair to call it a copout....
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-09-2012 , 01:58 PM
I was just thinking of what a professor of mine told me, "if you haven't written it down you haven't thought about it." And are there devs that write procedures without thinking about how they are going to be used?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-09-2012 , 02:41 PM
Quote:
Originally Posted by kerowo
I was just thinking of what a professor of mine told me, "if you haven't written it down you haven't thought about it." And are there devs that write procedures without thinking about how they are going to be used?
Good quote, and yeah, I would say the majority of devs start writing implementation before they think about the client code that will use that implementation code. That's the natural way to code that you have to unlearn.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-09-2012 , 02:46 PM
The point of this part of course is not TDD, but rather the logic you would use in building large systems.

When I was first exposed to wishful thinking, I thought it was revolutionary, but what they present here is only a foundation for what they have to say further along. The concept of wishful thinking quickly goes out the window. From a purely top-down approach, or in a system where you are assuming George is building up your primitives, wishful thinking makes a ton of sense, but from what I've seen of TDD, the concepts don't gel. Wishful thinking quickly breaks down once you introduce George and Mary implementing two different representations of the system functionality when both are needed.

I guess I should illustrate how the logic of the book impacts my current project:

I began by creating the front-end html, mindful of the fact that there is strong interaction with the database, however, the pages I created are sort of mini-systems, in that there is a ton of code reuse, their own sets of primitives, etc.

The second step was building the database. I did this because I want to minimize the data interactions between the front and back as much as possible. For example, I want to have all distinct user names, so there is a unique constraint on that column. When the user attempts to create an account, the code "tries" to create a new account, which either tells the user that the name isn't available or creates the account.

Really, the entire power of the course is framing the question "what if." Instead of "I would like this functionality, how do I do it?" I ask "What would happen if I attempted to add a feature to this code?" Which is a much more powerful approach, IMO. This forces me to code in layers, hopefully without going overboard.

Back when I first learned about wishful thinking, I attempted to use that concept alone in building a rather simple program, but I failed miserably at it. I guess ideally, top-down programming is powerful, but without bottom-up considerations, and more specifically, how to create bottom-up, you are bound to get stuck or create a messy system.

With that said, I think that this is all good stuff to know before going into TDD. I mean, how can you effectively use TDD unless you know why you need it? The opposite extreme is toss TDD out the window and just layer primitives on primitives.

Interesting read:

http://devblog.avdi.org/2011/08/22/y...de-is-my-hell/
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-09-2012 , 02:57 PM
kerowo: That Obj-C thread is pretty interesting. I don't want to muddy up the thread, but I was wondering how you like the language.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-09-2012 , 03:28 PM
In your unique username case, wishful thinking would be writing in the "findByName(user)" function into the flow without it existing yet. If that happened to be in a test file the test would fail because findByName() doesn't exist yet. Whether or not it's implementing into the app itself or a test doesn't really matter.

It might not be technically be called TDD if it's not in a test file but is still sort of is TDD. You are trying how it's going to be implemented before its functionality is written.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-09-2012 , 03:33 PM
Quote:
Originally Posted by gaming_mouse
chips,

thanks for the idea. i downloaded this, but i could find no import option to do what i need...
Make a new c# windows forms app. All defaults.

In solution explorer, right click on project, add existing item...
files of type *.*
pick your file, it is a .edmx, yes?

I basically did this. I don't do database this way so no warranty.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
09-09-2012 , 04:15 PM
gasp, visual studio isn't all that easy to use after all!
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote

      
m