Open Side Menu Go to the Top

03-30-2013 , 01:32 PM
Quote:
Originally Posted by adios
Quick one, how do the people here that employ Agile approach software design? Not looking for the "right" answer, just interested in different experiences. Thanks. Enjoyable forum btw.
what do you mean by "software design"?

my answer is probably "iteratively and incrementally".
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **
$25m Guaranteed WPM on CoinPoker
Join the action now
Daily Rewards • Splash Pots • CoinRaces
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **
03-30-2013 , 01:41 PM
Quote:
Originally Posted by tyler_cracker
what do you mean by "software design"?

my answer is probably "iteratively and incrementally".
Hmmmm.....

What would you use something like UML for?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-30-2013 , 02:14 PM
i have never wanted formal uml for anything. i favor drawing on a whiteboard to sketch out a system with many parts if that's helpful for discussion.

the basic tenet of agile is to do the simplest thing that could possibly work, then iterate on it. i think that approach works just as well for lines of code as it does for architecture or whatever the hell you think "software design" is.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-30-2013 , 02:28 PM
Quote:
Originally Posted by tyler_cracker
i have never wanted formal uml for anything. i favor drawing on a whiteboard to sketch out a system with many parts if that's helpful for discussion.

the basic tenet of agile is to do the simplest thing that could possibly work, then iterate on it. i think that approach works just as well for lines of code as it does for architecture or [bpwhatever the hell you think "software design" is.[/b]
Whoa I detect hostility here if so why? Ok what is the role for design patterns if "software design" is such an obscure, fuzzy idea?

Edit: I distinctly stated that I wasn't seeking right answer. I was just curious as to people's experiences with the software design process utilizing Agile. You use a white board and sketch a few things out. Cool I'm fairly certain other people have different experiences than that.

Last edited by adios; 03-30-2013 at 02:46 PM.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2013 , 03:16 PM
Quote:
Originally Posted by daveT
What do you guys think of the Ouya gaming system?

I think it's a pretty cool idea, but I wish they were a bit better at marketing. Creating games for a system that will have 10,000 users doesn't sound like a good use of your time, except for learning and stuff. Wouldn't it just be better to create an indie install program and sell the controllers so people can play on their PC or tablets?
I think it's awesome. I"m hopeful that it has many more users than 10,000. One thing that the rise of smartphones and tablets showed is that there is an under served gaming market. I think OUYA could well fit that market with fun, challenging, easy to play games on a reasonably priced ssystem. Not sure if it will work but I think there is a market there.

Someone should make a cloud DVR service that runs through OUYA. Then it's a 99$ game console and DVR.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2013 , 04:05 PM
Quote:
Originally Posted by Chips Ahoy
In C I think about scope / visibility. The public interface of a file goes in a header. Everything else I mark static and usually declare at the top of the .c.
I decided that using declarations in this instance is good for self-documenting as well as serving their function, then I moved the offending functions to its own area near the bottom of the program. It's quite disconcerting as I've never used circuitous functions before. I don't know how I feel about this design I'm using, but I can't think of a better way either.

***

With all these new self-learning schools coming out, I wonder if there is a market for people who could use some code review. Suppose that I am a student and there is a professional programmer who can look at my code for a small fee. I guess the alternative is to put my mind-dump on github and wait for complaints and pushes, but that seems unlikely to work out well. Is it a possible business?

***

Xhad; I was thinking that you could do a version of w3fools for Code Academy. If there is enough public embarrassment, I think they'll make some movement, especially if you write 15 articles and get the blog on the front page of Hacker News. Writing about your experiences dealing with the mods who even gave up on improving certain items would be quite stinging.

http://w3fools.com/
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2013 , 04:14 PM
Quote:
Originally Posted by aisflat439
I think it's awesome. I"m hopeful that it has many more users than 10,000. One thing that the rise of smartphones and tablets showed is that there is an under served gaming market. I think OUYA could well fit that market with fun, challenging, easy to play games on a reasonably priced ssystem. Not sure if it will work but I think there is a market there.

Someone should make a cloud DVR service that runs through OUYA. Then it's a 99$ game console and DVR.
It's one of those things that is too crazy to determine if it will work or not. The FF game looks pretty slick, then there are retro games as well. These games look more advanced than what you can get on a cell phone or tablet.

I don't think the cell phone / tablet market is a good indicator of its possible success. The games that do well on these devices are far and few between, plus they tend to be "freemium" games. People just don't want to pay for games and apps on their miniature devices.

The territory Ouya is getting into is partly charted and partly not. It'll be interesting to see what happens, but unless they can get shelf-space equivalent to Xbox and PS, they probably won't do too well. I just don't know how large the PC-retro gaming market is, and unless the Ouya is capable of bringing fresh new people to the platform and these styles of games, there is zero incentive for someone to bump their PC indie game to Ouya's platform since they'd be selling to the same face anyways.

I agree that adding in DVR capabilities would be a decent idea, though.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2013 , 08:59 PM
Quote:
Originally Posted by daveT
Xhad; I was thinking that you could do a version of w3fools for Code Academy. If there is enough public embarrassment, I think they'll make some movement, especially if you write 15 articles and get the blog on the front page of Hacker News. Writing about your experiences dealing with the mods who even gave up on improving certain items would be quite stinging.

http://w3fools.com/
Not gonna lie, I have been pondering something like this since I hit that jQuery garbage section. I even already know what I'd call it. I haven't quite reached the motivation to write something I'd be ok with posting for a wide audience though. Maybe I'll go through with that idea of dashing off a rough draft to Codecademy itself and seeing what they have to say about it. I've even considered emailing one of the authors I made fun of here; I found some conversations indicating that she thought her work would go through a bit more testing/editing (she's the one behind the markdown typo that made one of the lessons literally impossible without checking the source code of the page)
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2013 , 09:55 PM
btw, here is something google turned up empty on: Codecademy's editor, when working with CSS, complains every time you use an id in a selector. It just says "don't use IDs in selectors". (and no, this is never discussed in any tutorial ever) Yet that seems to be, in fact, the primary purpose of IDs, and the only thing most pages I could find do with them. Anyone have any idea what's going on?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-01-2013 , 12:55 AM
The way you put it makes it sound confusing. If they are proposing that you strictly use OOCSS, then using ID's is discouraged along with using descending selectors, but I'm not too clear on all the latest and greatest these days. Foundation does not use any ID's that I am aware of.

I suspect the tutor is just doing this to dodge discussing specificity, which a major mistake to not teach about. I guess you'd have to look at their CSS tutorial (class?) and see what all the fuss is about. Teaching OOCSS may or may not be putting the cart before the horse. At some point, assuming the students do get a job working at a company, they will be exposed to ID selectors and not learning what they are and why it matters in that situation doesn't sound good.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-01-2013 , 01:00 AM
They use id selectors all the time in their tutorials. In fact, there are a lot of tutorials where the pre-filled code generates warnings. They just put a tooltip warning in their editor and never explain why it's there. And, in the process, get students used to pushing through code even though it generates warnings that they don't understand...
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-01-2013 , 03:41 AM
Quote:
Originally Posted by Xhad
And, in the process, get students used to pushing through code even though it generates warnings that they don't understand...
Sounds like they are getting well-prepared to learn C programming then.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-01-2013 , 11:19 AM
Quote:
Originally Posted by adios
Quick one, how do the people here that employ Agile approach software design? Not looking for the "right" answer, just interested in different experiences. Thanks. Enjoyable forum btw.
Whenever we have a "Big Feature" (whatever the hell that means) our general approach is to spend a relatively short amount of time (couple of hours to a couple of days) researching relevant things and coming up with a rough plan of how we'll build the feature and how it will fit into our existing architecture.

This might involve picking the programming language we'll write the new code in, figuring out how it will communicate with other pieces (web services, through AWS' simple queue service, through a shared database, etc.), sketching up a high level diagram (think UML without all the bull**** complexity), and other high level architectural decisions.

The output of this is usually a wiki page with this information, a bunch of questions that need to be answered, a rough plan for how we'll build the feature (we often start with trying to prototype anything really risky), what's considered the minimal viable product for the feature, etc.

The wiki page gets shared with people, any feedback is incorporated, and then we basically come up with some stories for the next sprint to start on.

We find this helpful to avoid making stupid architectural decisions that we have to walk back painfully but its only really a way to start off. The more code that actually gets written the more we know and the more likely we are to deviate from the original wiki plan (which is totally ok).
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-01-2013 , 05:08 PM
Quote:
Originally Posted by daveT
Writing about your experiences dealing with the mods who even gave up on improving certain items would be quite stinging.
So I took another look, and decided to create a new account as a sort of "how easy would it be for newbies to stumble on the bad stuff" experiment. It looks like they finally hid the truly abominable stuff well enough that I couldn't find it even though I was actively trying. So, good riddance, but now I have to reevaluate my overall opinion of the site a bit.

I've long suspected they would phase Code Year out entirely, and it looks like they're taking the final steps in that direction. If they can rebrand themselves a bit, it'll be easier to hide behind the shield of "well it's user-submitted content" and my complaints wouldn't be nearly as damning. I mean my complaints at the end largely amounted to "Don't you people have editors?" and I think the answer is coming back that they clearly don't.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-01-2013 , 05:30 PM
OK this C++ question is driving me crazy and I can't seem to figure out what I'm doing wrong. I have a pointer data field called bestFriend in an class called Student and they have to point to each other. So this is what I have to try and do this:

void Student::setBestFriend(Student newStudent)
{
bestFriend=&newStudent;
newStudent.bestFriend=&(*this)
}

bestFriend=&newStudent; seems to work but the next line doesn't. That is, if I call student1.setBestFriend(student2) student1 will have student 2 as his bestFriend but not the reverse.

What am I doing wrong? Isn't &(*this) just the same as &student1?

Thanks for any help anyone can give me.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-02-2013 , 02:59 AM
Quote:
Originally Posted by SenorKeeed

What am I doing wrong?
Using C++ :P

Spoiler:
Neil gave you the real answer
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-02-2013 , 05:58 AM
Quote:
Originally Posted by SenorKeeed
OK this C++ question is driving me crazy and I can't seem to figure out what I'm doing wrong. I have a pointer data field called bestFriend in an class called Student and they have to point to each other. So this is what I have to try and do this:

void Student::setBestFriend(Student * newStudent)
{
bestFriend=newStudent;
newStudent->bestFriend=this
}


bestFriend=&newStudent; seems to work but the next line doesn't. That is, if I call student1.setBestFriend(&student2) student1 will have student 2 as his bestFriend but not the reverse.
F
What am I doing wrong? Isn't &(*this) just the same as &student1?

Thanks for any help anyone can give me.
See bolded

Last edited by adios; 04-02-2013 at 06:19 AM.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-02-2013 , 06:05 AM
Quote:
Originally Posted by jjshabado
Whenever we have a "Big Feature" (whatever the hell that means) our general approach is to spend a relatively short amount of time (couple of hours to a couple of days) researching relevant things and coming up with a rough plan of how we'll build the feature and how it will fit into our existing architecture.

This might involve picking the programming language we'll write the new code in, figuring out how it will communicate with other pieces (web services, through AWS' simple queue service, through a shared database, etc.), sketching up a high level diagram (think UML without all the bull**** complexity), and other high level architectural decisions.

The output of this is usually a wiki page with this information, a bunch of questions that need to be answered, a rough plan for how we'll build the feature (we often start with trying to prototype anything really risky), what's considered the minimal viable product for the feature, etc.

The wiki page gets shared with people, any feedback is incorporated, and then we basically come up with some stories for the next sprint to start on.

We find this helpful to avoid making stupid architectural decisions that we have to walk back painfully but its only really a way to start off. The more code that actually gets written the more we know and the more likely we are to deviate from the original wiki plan (which is totally ok).
Thanks jj. Excellent and interesting.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-02-2013 , 06:16 AM
Quote:
Originally Posted by adios
Nope looking at previous replies typical snark answers for this site.
Neil gave the correct answer. My joke was snarky I guess but with a smiley face and pointing out the correct answer was already there (and I would have given it if it weren't). This forum especially has an extremely high content to snark ratio, and the snark is usually of the friendly variety, so I think your comment is unfounded.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-02-2013 , 06:32 AM
Quote:
Originally Posted by SenorKeeed
OK this C++ question is driving me crazy and I can't seem to figure out what I'm doing wrong. I have a pointer data field called bestFriend in an class called Student and they have to point to each other. So this is what I have to try and do this:

void Student::setBestFriend(Student newStudent)
{
bestFriend=&newStudent;
newStudent.bestFriend=&(*this)
}

bestFriend=&newStudent; seems to work but the next line doesn't. That is, if I call student1.setBestFriend(student2) student1 will have student 2 as his bestFriend but not the reverse.

What am I doing wrong? Isn't &(*this) just the same as &student1?

Thanks for any help anyone can give me.
Function parameters and automatic variables are allocated on a stack frame.

They way you had it coded was a copy of student2 was saved on the stack frame and thus you were modifying a copy of student2. The change I made puts a pointer to student2 on the stack frame and it changes to what that pointer points to which is student2. Definitely learn what call by reference and value mean from the link above.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-02-2013 , 06:34 AM
Quote:
Originally Posted by gaming_mouse
Neil gave the correct answer. My joke was snarky I guess but with a smiley face and pointing out the correct answer was already there (and I would have given it if it weren't). This forum especially has an extremely high content to snark ratio, and the snark is usually of the friendly variety, so I think your comment is unfounded.
Yeah I did a ninja edit because I was out of line with my comment. Apologies to you.
I just really think tyler_cracker was way out of line with his responses to my post above and and I am taking it out on you. Again apologies.

Last edited by adios; 04-02-2013 at 06:44 AM.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-02-2013 , 06:47 AM
Yeah problem was easy once I passed a pointer to an object to the function rather than just an object. Thanks.

But yes using C++ also seems to be the correct answer.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-02-2013 , 06:56 AM
Quote:
Originally Posted by SenorKeeed
Yeah problem was easy once I passed a pointer to an object to the function rather than just an object. Thanks.

But yes using C++ also seems to be the correct answer.
C++ is definitely an appropriate language for many problem domains, no doubt about it.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-02-2013 , 07:03 AM
I know it's just frustrating. My only programming experience is in matlab, which I've used quite a bit. I know it's not a real programming language but it's just so much easier to work with. I particularly miss just being able to just fool around at the command prompt.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **
$25m Guaranteed WPM on CoinPoker
Join the action now
Daily Rewards • Splash Pots • CoinRaces
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **

      
m