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
JawnV6
Jul 4, 2004

So hot ...

Dumb Lowtax posted:

So "yes" then to the second possibility I offered in what you quoted, plus a side of being unnecessarily dickish
oh yea the bit that supposes the existence and desirability of an "IDE", im very sorry my original snark didn't make it clear i thought devs could operate without training wheels

Adbot
ADBOT LOVES YOU

Arsenic Lupin
Apr 12, 2012

This particularly rapid💨 unintelligible 😖patter💁 isn't generally heard🧏‍♂️, and if it is🤔, it doesn't matter💁.


Oh, for the love of God, can we have the emacs vs. vi argument instead? Possibly cshell vs. bash?

Kazinsal
Dec 13, 2011


Arsenic Lupin posted:

Oh, for the love of God, can we have the emacs vs. vi argument instead? Possibly cshell vs. bash?

"write one yourself in perl" and ksh respectively

Arsenic Lupin
Apr 12, 2012

This particularly rapid💨 unintelligible 😖patter💁 isn't generally heard🧏‍♂️, and if it is🤔, it doesn't matter💁.


Kazinsal posted:

"write one yourself in perl" and ksh respectively

I was deliberately going for ancient.

Bonfire Lit
Jul 9, 2008

If you're one of the sinners who caused this please unfriend me now.

if you don't write your code by angrily staring at an eprom you're not a real programmer

Arsenic Lupin
Apr 12, 2012

This particularly rapid💨 unintelligible 😖patter💁 isn't generally heard🧏‍♂️, and if it is🤔, it doesn't matter💁.


Bonfire Lit posted:

if you don't write your code by angrily staring at an eprom you're not a real programmer

I knew someone who knew someone who could whistle "A" into a 300 baud modem. If it isn't true, it's still a good legend.

Foxfire_
Nov 8, 2010

10x engineers flip the electrons with their minds. You can find them by looking to see if they have a keyboard plugged in.

Ruggan
Feb 20, 2007
WHAT THAT SMELL LIKE?!


I’m gonna analyze all these posts on my 1 server Hadoop cluster

Absurd Alhazred
Mar 27, 2010

by Athanatos
I'm very comfortable using breakpoints and watches when debugging in Visual Studio but occasionally it will still be easiest to just cout or otherwise log what's going on in an otherwise unmonitored build, especially if a lot of optimization is happening which makes the interesting variables nonsensical or nonexistent.

Sagacity
May 2, 2003
Hopefully my epitaph will be funnier than my custom title.

Ola posted:

Tweed logic.
wonderfully written, well done

Qwertycoatl
Dec 31, 2008

Arsenic Lupin posted:

Oh, for the love of God, can we have the emacs vs. vi argument instead? Possibly cshell vs. bash?

If you want to build a project written by hardware engineers you have to use cshell because the build process is "source env.csh, set three other environment variables manually, run make with some extra commandline parameters"

Dirt Road Junglist
Oct 8, 2010

We will be cruel
And through our cruelty
They will know who we are
I just wait for sun spots to do the work for me.

QuarkJets
Sep 8, 2008

i pulled up the article on functional programming in my mid-90s CD-ROM version of Encyclopedia Britannica and it says that functional programming is some stupid poo poo done by idiot nerds who like to huff each others' farts, now can we just put this factually accurate statement in the OP so that we never have to have this conversation again

feedmegin
Jul 30, 2008

Qwertycoatl posted:

If you want to build a project written by hardware engineers you have to use cshell because the build process is "source env.csh, set three other environment variables manually, run make with some extra commandline parameters"

And then make runs some godawful test script written in tcl/tk

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe
real programmers are the ones who have roughly the background and experience i do and think about problems in the same way i do

Jewel
May 2, 2009

my "fav" bug was a race condition that stopped happening when you add a printf

Qwertycoatl
Dec 31, 2008

My "fav" was a code mis-execution cpu bug that went away when run in the debugger

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...

Jewel posted:

my "fav" bug was a race condition that stopped happening when you add a printf

Sounds like the solution was straightforward.

fritz
Jul 26, 2003

JawnV6 posted:

i thought devs could operate without training wheels

In *this* thread???

Phobeste
Apr 9, 2006

never, like, count out Touchdown Tom, man

Jewel posted:

my "fav" bug was a race condition that stopped happening when you add a printf

i liked the one where two things talking over a very chatty spi bus would go out of sync where the only thing that pointed you in the right direction was a capture of an hour or two's worth of traffic with a logic analyzer. in retrospect i really should have written a wireshark plugin but it would still be a multi gb pcap lol

Absurd Alhazred
Mar 27, 2010

by Athanatos
Real programmers are cool, I hope I can be one some day.

Meanwhile here I am, writing barely functioning code, trying not to trip over my own bugs every day.

OddObserver
Apr 3, 2009

Athas posted:

I am agitating for the opposite at my department! We teach light functional and object-oriented programming to first year bachelors students (and the latter is really mostly procedural programming and abstract data types), and I think we should move even more of the heavyweight OO to the masters program. It really does not make sense for the relatively small programs they write early in their education (and they don't have the experience to appreciate a large system in the abstract), while the FP techniques still work well at small scale.

TAing a freshman CS class in Java made me feel like there was definitely way too much stuff going on there for people who are just starting out. Can we just go back to Pascal or something?

netcat
Apr 29, 2008

OddObserver posted:

TAing a freshman CS class in Java made me feel like there was definitely way too much stuff going on there for people who are just starting out. Can we just go back to Pascal or something?

I TA:d an intro class in C of all languages and that was a nightmare. Like trying to explain basic syntactic stuff to people who have never written a line of code in their lives can be hard enough but then their programs start segfaulting all over the place.

Absurd Alhazred
Mar 27, 2010

by Athanatos

netcat posted:

I TA:d an intro class in C of all languages and that was a nightmare. Like trying to explain basic syntactic stuff to people who have never written a line of code in their lives can be annoying enough but then their programs start segfaulting all over the place.

It's an important experience for anyone who's going to ever touch computers for a living, seeing how loving fragile it all is.

feedmegin
Jul 30, 2008

Jewel posted:

my "fav" bug was a race condition that stopped happening when you add a printf

My most recent fun one was a bug in the hardware specification of the RAM being accessed by the Cortex-M0 on the FPGA for which I was writing firmware, where the byte lane enable signals on the data bus weren't routed properly so all loads and stores were 32 bits even if the machine code was intending to do 16 or 8. Actually worked almost fine because most of the variables in the firmware were in fact 32 bits, but then I'd put a char variable on the stack or something and variables around it would mysteriously get corrupted.

canis minor
May 4, 2011

Jewel posted:

my "fav" bug was a race condition that stopped happening when you add a printf

Same here, but when adding a comment

Spatial
Nov 15, 2007

Phobeste posted:

i liked the one where two things talking over a very chatty spi bus would go out of sync where the only thing that pointed you in the right direction was a capture of an hour or two's worth of traffic with a logic analyzer. in retrospect i really should have written a wireshark plugin but it would still be a multi gb pcap lol
hello me. and it was a medical device to boot!

feedmegin posted:

My most recent fun one was a bug in the hardware specification of the RAM being accessed by the Cortex-M0 on the FPGA for which I was writing firmware, where the byte lane enable signals on the data bus weren't routed properly so all loads and stores were 32 bits even if the machine code was intending to do 16 or 8. Actually worked almost fine because most of the variables in the firmware were in fact 32 bits, but then I'd put a char variable on the stack or something and variables around it would mysteriously get corrupted.
nice

Qwertycoatl
Dec 31, 2008

Absurd Alhazred posted:

Real programmers are cool, I hope I can be one some day.

Meanwhile here I am, writing barely functioning code, trying not to trip over my own bugs every day.

"Real programming" is pretty much that too, but you get cooler war stories sometimes

JehovahsWetness
Dec 9, 2005

bang that shit retarded

OddObserver posted:

TAing a freshman CS class in Java made me feel like there was definitely way too much stuff going on there for people who are just starting out. Can we just go back to Pascal or something?

I was an adjunct prof for a second-year Java course and there was just tons of stuff I'd have to tell students to ignore and say "right now, it's magic, I'll explain it in a few weeks". It was effectively the CS concentrations wash-out course, but teaching procedural programming via Java in the first year really didn't set them up for success in the second year. I think the program had planned to start with Python at some point in the future but the actual profs decided that the load of having students learn two syntaxes in one year wasn't going to work.

This was also a Fall semester course, so it'd take like a month for everyone to remember all the stuff they supposedly learned last year. We'd be ~5 weeks in before I could start the welcome-to-OOP lectures and that's when the bimodal grade distribution REALLY kicked in. It's surprisingly tough to get a sophomore to "get" OOP and you run out of analogies pretty quick.

Spatial
Nov 15, 2007

Current favourite bug: Low power microcontroller's sleep state from which it is able to wake 999,999 out of 1,000,000 times.

This is one too few times. Once it stops waking up it stops responding to any stimulus, internal or external. It's impossible to debug because you can't enter sleep states when a debugger is connected and primarily controlled by a hardware FSM. Added bonus: even the system watchdog ceases to function.

Hardware guys' opinion: You're holding it wrong

Workaround: Don't go to sleep, increasing power consumption by a factor of 500

csammis
Aug 26, 2003

Mental Institution

feedmegin posted:

My most recent fun one was a bug in the hardware specification of the RAM being accessed by the Cortex-M0 on the FPGA for which I was writing firmware, where the byte lane enable signals on the data bus weren't routed properly so all loads and stores were 32 bits even if the machine code was intending to do 16 or 8. Actually worked almost fine because most of the variables in the firmware were in fact 32 bits, but then I'd put a char variable on the stack or something and variables around it would mysteriously get corrupted.

This exact problem but it was our EDA librarians who created the RAM component symbol with byte lane enable signals as swappable when in reality they weren't. Most projects didn't have an issue because the person doing the PCB routing happened to pick the right order because it happened to be easier for the layout.

Guess whose project didn't guess correctly :suicide:

Spatial posted:

Current favourite bug: Low power microcontroller's sleep state from which it is able to wake 999,999 out of 1,000,000 times.

This is one too few times. Once it stops waking up it stops responding to any stimulus, internal or external. It's impossible to debug because you can't enter sleep states when a debugger is connected and primarily controlled by a hardware FSM. Added bonus: even the system watchdog ceases to function.

Hardware guys' opinion: You're holding it wrong

Workaround: Don't go to sleep, increasing power consumption by a factor of 500

Sounds like it's time for a fun chat with the vendor!

OddObserver
Apr 3, 2009

Spatial posted:

Added bonus: even the system watchdog ceases to function.



The real horror right there.

...I wanted to link to an article about the LEM software here, where the RTOS hypervisor killing things and restarting was critical for moon landing, but I can't find the article due to all the 50th anniversary press stuff crowding it out :(

ultrafilter
Aug 23, 2007

It's okay if you have any questions.


Qwertycoatl posted:

My "fav" was a code mis-execution cpu bug that went away when run in the debugger

There's nothing quite like sidestepping a complicated and horrible crash at application shutdown with a sleep(500).

Bruegels Fuckbooks
Sep 14, 2004

Now, listen - I know the two of you are very different from each other in a lot of ways, but you have to understand that as far as Grandpa's concerned, you're both pieces of shit! Yeah. I can prove it mathematically.

ultrafilter posted:

There's nothing quite like sidestepping a complicated and horrible crash at application shutdown with a sleep(500).

Thank you for playing Wing Commander!

HappyHippo
Nov 19, 2003
Do you have an Air Miles Card?
One time I had to break out the oscilloscope to debug something

Phobeste
Apr 9, 2006

never, like, count out Touchdown Tom, man
I don’t believe you, nobody’s ever had to break out the scope precisely once. It’s either never or loving constantly

JawnV6
Jul 4, 2004

So hot ...

Spatial posted:

Current favourite bug: Low power microcontroller's sleep state from which it is able to wake 999,999 out of 1,000,000 times.

This is one too few times. Once it stops waking up it stops responding to any stimulus, internal or external. It's impossible to debug because you can't enter sleep states when a debugger is connected and primarily controlled by a hardware FSM. Added bonus: even the system watchdog ceases to function.

Hardware guys' opinion: You're holding it wrong

Workaround: Don't go to sleep, increasing power consumption by a factor of 500
loooool WhY dIdN'T yOuR IDE HeLp???

Jewel posted:

my "fav" bug was a race condition that stopped happening when you add a printf
in college i was part of a research group, a lowly undergrad working on glue verilog garbage, and in my first meeting one of the grad students said he was having issues nailing down a race condition on a 8 core simulator. "well what did you change?" "oh, just added a couple printfs!"

like yeah when we're looking at individual instructions causing HW races maybe jamming a thousand cycles of string parsing in there might jiggle things around and hide the issue??

Phobeste posted:

I don’t believe you, nobody’s ever had to break out the scope precisely once. It’s either never or loving constantly
my career average is probably once every 6 months on the silly scope, maybe 4x as often a logic analyzer is enough

Ola
Jul 19, 2004

This reinforces my belief that "just change stuff around a bit, see if it goes away" is a sound troubleshooting technique.

Qwertycoatl
Dec 31, 2008

Ola posted:

This reinforces my belief that "just change stuff around a bit, see if it goes away" is a sound troubleshooting technique.

It does make the problem go away, but it'll come back again two days before the release date.

Adbot
ADBOT LOVES YOU

taqueso
Mar 8, 2004


:911:
:wookie: :thermidor: :wookie:
:dehumanize:

:pirate::hf::tinfoil:

Then you change it back.

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