Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
krnhotwings
May 7, 2009
Grimey Drawer
Does this mean that one would never be able to create an implicit class that takes a string for its constructor 'cause it would always collide with Predef's augmentString?

Also, I've briefly read about dynamics but have never used them. In your example, how would you use applyDynamic? Within the body of Main, would you do something like:

code:
new welp("blah").println("welp")

Adbot
ADBOT LOVES YOU

ultramiraculous
Nov 12, 2003

"No..."
Grimey Drawer

Oh god what have you done.

Dr. Stab
Sep 12, 2010
👨🏻‍⚕️🩺🔪🙀😱🙀
One thing I've learned working with other programmers is that you don't have to know how to use a computer to program one.

prefect
Sep 11, 2001

No one, Woodhouse.
No one.




Dead Man’s Band

Dr. Stab posted:

One thing I've learned working with other programmers is that you don't have to know how to use a computer to program one.

I don't do hardware.

Mogomra
Nov 5, 2005

simply having a wonderful time

Dr. Stab posted:

One thing I've learned working with other programmers is that you don't have to know how to use a computer to program one.

What do you mean I can't load the entire database into memory before my java application does anything?

Bognar
Aug 4, 2011

I am the queen of France
Hot Rope Guy

Mogomra posted:

What do you mean I can't load the entire database into memory before my java application does anything?

Earlier this year I inherited an application that cached the entire database in memory on startup for some ill-conceived notion of performance. Because iterating over that entire collection in memory will definitely be faster than the indexed database.

Oh yeah, and after any database writes he would refresh the whole thing.

QuarkJets
Sep 8, 2008

Mogomra posted:

What do you mean I can't load the entire database into memory before my java application does anything?

I think that some people have a hard time mixing database languages with other languages for some reason. Here are just a few of the things that my coworkers do while trying to use MySQL in Python:

1) Build an unsafe query from user input by using Python string operations. Not only does this make us vulnerable to SQL injections (accidental or otherwise), but it's actually more difficult to code this way than it is to just pass arguments directly to the cursor, which will sanitize and properly format your arguments for you.

2) Set up a loop in Python and execute a query in each iteration instead of executing a single query and iterating over the results

3) Fetch every row from a table with MySQL, loop over the results in Python and check conditions by indexing into each column

At least I haven't seen any "let's load the entire database into memory" shenanigans

Mogomra
Nov 5, 2005

simply having a wonderful time
Thankfully I didn't actually have to work on it, but the people who did had some really cool stories. The developer who wrote the program got fired a week or two earlier for actually trying to sabotage our other software.

Basically, management was asking questions like, "Hey, this was working before, what did you fuckwits do to break it?" It turned out they had just reached the tipping point where the amount of data being cached at the beginning was too much for the JRE and/or Windows to handle.

Pretty much unrelated, but upon further inspection of the code, they found a few paragraphs long comment going over the differences between a "load," an "rear end load," and a "gently caress load" with respect to shipping items in boxes. Only in the comment he referred to boxes as butts.

So a gently caress load was way to big to fit in your rear end, but an rear end load barely fit in your rear end.

I'd swear I saved a copy of the comment somewhere, but I can't find it. :(

Westie
May 30, 2013



Baboon Simulator

Mogomra posted:

Thankfully I didn't actually have to work on it, but the people who did had some really cool stories. The developer who wrote the program got fired a week or two earlier for actually trying to sabotage our other software.

Basically, management was asking questions like, "Hey, this was working before, what did you fuckwits do to break it?" It turned out they had just reached the tipping point where the amount of data being cached at the beginning was too much for the JRE and/or Windows to handle.

Pretty much unrelated, but upon further inspection of the code, they found a few paragraphs long comment going over the differences between a "load," an "rear end load," and a "gently caress load" with respect to shipping items in boxes. Only in the comment he referred to boxes as butts.

So a gently caress load was way to big to fit in your rear end, but an rear end load barely fit in your rear end.

I'd swear I saved a copy of the comment somewhere, but I can't find it. :(

That's what revision history is for!

Mogomra
Nov 5, 2005

simply having a wonderful time
Hahaha, we didn't have any source control until a week or so before I got hired. This "program" had been in production for something like 3 years. Even after they got poo poo in an SVN repo, this other developer went out of his way to keep his work out of it because he mostly worked on separate projects at the time.

We had some nice spaghetti-code-php website that would randomly have SQL to truncate tables in places that didn't have any reason to access the db anyway. It was just a huge mess...

revmoo
May 25, 2006

#basta
I really don't get people that don't like using SCM. It makes your life so much easier in so many ways.

Contra Duck
Nov 4, 2004

#1 DAD

revmoo posted:

I really don't get people that don't like using SCM. It makes your life so much easier in so many ways.

I don't like having to learn new things when the current method has worked so well* up to now.

* Except for all those horrible horrible catastrophes.

Hughlander
May 11, 2005

Contra Duck posted:

I don't like having to learn new things when the current method has worked so well* up to now.

* Except for all those horrible horrible catastrophes.

In the case above it sounds more line "I don't want any accountability for any bugs I've caused. And I want plausible deniability that I did cause them"

Mogomra
Nov 5, 2005

simply having a wonderful time

Hughlander posted:

In the case above it sounds more line "I don't want any accountability for any bugs I've caused. And I want plausible deniability that I did cause them"

Yeah, this exactly the case for that dev with the crazy Java applications.

That and he pretty much ran the software/web department of the company for many years, had no education other than 2 years of game development at community college, and had no interest in teaching himself how to do any of the things that were expected of him. He didn't want people to know that he pretty much sat at his desk all day doing nothing, because he had no clue how to move forward on any of his projects.

He was pretty good at tricking the owner into thinking he was smart though, so there's that I guess. :shrug:

Mogomra fucked around with this message at 15:51 on Jun 5, 2014

Reformed Pissboy
Nov 6, 2003

Quick one from a global definitions file on a legacy project. So close.

C++ code:
#define MAX_UINT8  0x7F
#define MAX_INT8   0xFF
#define MAX_UINT16 0x7FFF
#define MAX_INT16  0xFFFF
#define MAX_UINT32 0x7FFFFFFF
#define MAX_INT32  0xFFFFFFFF

Sinestro
Oct 31, 2010

The perfect day needs the perfect set of wheels.
The U clearly stands for ununsigned.

Munkeymon
Aug 14, 2003

Motherfucker's got an
armor-piercing crowbar! Rigoddamndicu𝜆ous.



Trying to set up branching on a project that's never had branch-based feature management before and this involves changing the directory structure a bit

quote:

Unable to perform operation on $/Services/Service/Main. The item $/Services/Service/img/was-never-even-committed.jpg is locked in workspace NEWGUY;New Guy.

Locking version control :arghfist:

New Guy :arghfist:

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

Munkeymon posted:

Trying to set up branching on a project that's never had branch-based feature management before and this involves changing the directory structure a bit


Locking version control :arghfist:

New Guy :arghfist:

Use local workspaces, problem solved. If you're using a local workspace you don't even have the option to put an exclusive checkout on a file.

lazer_chicken
May 14, 2009

PEW PEW ZAP ZAP
How about if the horror is not the code but the developer?

Met a new developer on my project today. She claims to have a CS degree. She didn't know what version control, unit testing, or big O notation were. When asked if she had ever used version control before, she said "Yes, I've used dropbox." :psyduck: Also didn't know what a UNIX shell was and has never used python or perl or ruby or really anything other than C. Oh but she claims to have experience writing shell scripts in bash despite having no idea how to use bash (i.e. we had to tell her how to use flags with commands and how to ctrl+c a runaway process).

Give it some time and I'm sure she will generate some good content for this thread.

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

lazer_chicken posted:

How about if the horror is not the code but the developer?

Met a new developer on my project today. She claims to have a CS degree. She didn't know what version control, unit testing, or big O notation were. When asked if she had ever used version control before, she said "Yes, I've used dropbox." :psyduck: Also didn't know what a UNIX shell was and has never used python or perl or ruby or really anything other than C. Oh but she claims to have experience writing shell scripts in bash despite having no idea how to use bash (i.e. we had to tell her how to use flags with commands and how to ctrl+c a runaway process).

Give it some time and I'm sure she will generate some good content for this thread.

The horror is your hiring process.

lazer_chicken
May 14, 2009

PEW PEW ZAP ZAP

Ithaqua posted:

The horror is your hiring process.

Government job, so yeah. Our HR is abysmally bad.

Deus Rex
Mar 5, 2005

lazer_chicken posted:

Met a new developer on my project today. She claims to have a CS degree. She didn't know what version control, unit testing, or big O notation were.

Is she a fresh graduate? Why do you think a university Computer Science program should waste time teaching version control or unit testing? The problem is your hiring process, unless she's an intern or something like that.

zeekner
Jul 14, 2007

Deus Rex posted:

Is she a fresh graduate? Why do you think a university Computer Science program should waste time teaching version control or unit testing? The problem is your hiring process, unless she's an intern or something like that.

Because it's a skill set legitimately useful to both academic CS work and software development in private industry? People bemoan the state of programming practices in academia, so that time would not be wasted.

vOv
Feb 8, 2014

Deus Rex posted:

Is she a fresh graduate? Why do you think a university Computer Science program should waste time teaching version control or unit testing? The problem is your hiring process, unless she's an intern or something like that.

Even if she's a fresh graduate, what the hell kind of CS program doesn't teach big O notation?

Internet Janitor
May 17, 2008

"That isn't the appropriate trash receptacle."
Yeah, it's somewhat excusable for a fresh CS graduate to not know much about tooling, but if they also don't know anything about complexity analysis what the hell did they learn?

raminasi
Jan 25, 2005

a last drink with no ice

Internet Janitor posted:

Yeah, it's somewhat excusable for a fresh CS graduate to not know much about tooling, but if they also don't know anything about complexity analysis what the hell did they learn?

I'm guessing "How to lie on a resume."

piratepilates
Mar 28, 2004

So I will learn to live with it. Because I can live with it. I can live with it.



Deus Rex posted:

Is she a fresh graduate? Why do you think a university Computer Science program should waste time teaching version control or unit testing? The problem is your hiring process, unless she's an intern or something like that.

I learned literally everything he mentioned through University courses, most of them being required courses to take.

(University of Toronto, St. George campus if you're wondering).

ExcessBLarg!
Sep 1, 2001

Deus Rex posted:

Why do you think a university Computer Science program should waste time teaching version control or unit testing?
A CS degree that focuses exclusively on the science aspect is really a math degree.

Truth is, there's an expectation that a CS degree includes an element of practice (even what I'd call engineering) where some time is spent covering (implementations of CS in modern) computer systems. Otherwise fresh graduates would end up rehashing the past 40 years of computer systems and otherwise be unemployable.

So yeah, I'd expect a fresh CS grad to be aware of the concept of version control, if not be familiar with at least one system and possibly even have some high-level understanding of such a system's implementation. Unit testing is also a very important practice in programming, and big-O is a thing in theoretical computer science. Not being familiar with any of them result in "well, what the hell did you learn?"

Edit: It's like a chemistry major being completely unfamiliar with the operation of a chem lab and not being able to perform a titration.

carry on then
Jul 10, 2010

by VideoGames

(and can't post for 10 years!)

Yeah, even at an obscure state college (Northern Arizona) we learned quite a bit of practical skills and the final project was team-based implementation for a client. Either the program was really poor or just let her slide a few more times than they should, but not being at least aware of those tools shouldn't be as common as it seems to be.

Steve French
Sep 8, 2003

Well, I've helped to somehow manage to bring a pull request to the point where attempting to load it causes GitHub to throw 500s.

The pull request in question was for gerrit CI integration as part of a gradual migration from GitHub to gerrit

Impotence
Nov 8, 2010
Lipstick Apathy

ExcessBLarg! posted:

So yeah, I'd expect a fresh CS grad to be aware of the concept of version control

I've had personal code on github since middle school, how the gently caress does anyone make it through undergrad without using some form of VCS at least once?

pokeyman
Nov 26, 2006

That elephant ate my entire platoon.

Biowarfare posted:

I've had personal code on github since middle school, how the gently caress does anyone make it through undergrad without using some form of VCS at least once?

Never do a team project? Try it once and have an awful experience figuring out some bullshit command line interface, then vow never to return? Don't intern anywhere competent?

Tons of useful software got and gets written without version control. Not my cup of tea but it's hardly a requirement.

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

Biowarfare posted:

I've had personal code on github since middle school, how the gently caress does anyone make it through undergrad without using some form of VCS at least once?

You're young. Github has only been around for about 6 years, so I think you're taking for granted just how easy it is to connect with other developers and find out about new things, and how much more user-friendly everything is nowadays. I didn't use source control at all during my days as an undergrad. I spent a few hours trying to get CVS working at one point, then said "gently caress it" and went back to playing Diablo 2.

shodanjr_gr
Nov 20, 2007

Biowarfare posted:

I've had personal code on github since middle school, how the gently caress does anyone make it through undergrad without using some form of VCS at least once?

As stated above, most people seem content with using Dropbox as a VCS...even for team projects...I've "enlightened" plenty of undergrad and master students by showing them the combo of Source Tree + bitbucket. Hell, you don't even have to touch the git CLI for 95% of the things that a couple of people, working as a team on a single thing would wanna do.

To be fair, most Universities do not introduce people to source control early enough (or at all) and source control is one of those things that does not seem particularly impressive to the untrained person, until they are actually FORCED to use it somehow...

Steve French
Sep 8, 2003

Ithaqua posted:

You're young. Github has only been around for about 6 years, so I think you're taking for granted just how easy it is to connect with other developers and find out about new things, and how much more user-friendly everything is nowadays. I didn't use source control at all during my days as an undergrad. I spent a few hours trying to get CVS working at one point, then said "gently caress it" and went back to playing Diablo 2.

Yeah, except we're talking about something that happened now, not in the old days.

pokeyman
Nov 26, 2006

That elephant ate my entire platoon.

shodanjr_gr posted:

To be fair, most Universities do not introduce people to source control early enough (or at all) and source control is one of those things that does not seem particularly impressive to the untrained person, until they are actually FORCED to use it somehow...

Sitting everyone down in Programming 101 and saying "alright, in three weeks we'll start coding but today, here's how we download SourceTree..." would turn a lot of people off the subject entirely.

Though Programming 101 seems to be doing a great job at turning a lot of people off as is, so who knows.

shodanjr_gr
Nov 20, 2007

pokeyman posted:

Sitting everyone down in Programming 101 and saying "alright, in three weeks we'll start coding but today, here's how we download SourceTree..." would turn a lot of people off the subject entirely.

Though Programming 101 seems to be doing a great job at turning a lot of people off as is, so who knows.

It doesn't have to be a CSE-101 level skill set. You can do it further down the line, in the second or third year. Heck, by that point tons of students will have used Dropbox as their CVS on a group project and experienced the relevant horrors. THEN you introduce them to proper DCVS, they appreciate its benefits and convert themselves and all of their friends.

Hughlander
May 11, 2005

Steve French posted:

Well, I've helped to somehow manage to bring a pull request to the point where attempting to load it causes GitHub to throw 500s.

The pull request in question was for gerrit CI integration as part of a gradual migration from GitHub to gerrit

Github is fighting back your attempt to leave it.

QuarkJets
Sep 8, 2008

Biowarfare posted:

I've had personal code on github since middle school, how the gently caress does anyone make it through undergrad without using some form of VCS at least once?

It's pretty easy in a lot majors that require the use of computers for computation, especially the more science-centric ones. I'm a physicist and didn't encounter real version control software until grad school, and that was probably only because I was working on a project that had computer engineers on the team (plenty of the professors basically just used Dropbox to keep things backed up... and that's it)

Adbot
ADBOT LOVES YOU

ErIog
Jul 11, 2001

:nsacloud:
Speaking of teaching version control in academia, has anyone had experience using something like GitHub or BitBucket to aggregate simple homework submissions from students? I could have sworn I read about someone here a few years ago doing some kind of CS degree where they had to submit like that over the network. It wasn't on the web, though. I believe the person said it was local to the university network, and that the homework/projects they were doing were all done through that university dev environment.

We did a version of this for one of my media training courses back when I was in university. For our capstone video/audio engineering project we had to keep a diary on Blogger or something, and part of that was so the prof could easily see everyone's progress via RSS, students could read each other's progress, discuss solutions to technical problems with each other, and in the process they'd get used to blog WYSIWYG and simple web markup.

This was probably 7-8 years ago at this point, and so BLOGGING was kind of a trendy thing a lot of the professors were trying to integrate. Couldn't teaching version control be kind of like that for some CS programs? I guess the split between the science portion and the software development portion is probably the thing that keeps that from happening, unfortunately.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply