IT/Software career thread: Invert binary trees for dollars.

Noodleface

A Mod Real Quick
37,961
14,508
I've used IDLE before but I hated it. I always go back to just writing in Notepad++ with python plugins. I just use it to write test scripts though, so nothing major.
 

Tripamang

Naxxramas 1.0 Raider
5,220
31,832
When C++ 11 came out we re-factored a good chunk of our code to use either standard lib shared pointers or unique pointers. In the four or so years since we've done that I can't think of a single memory leak issue in our code base that we've had to chase down that wasn't related to a 3rd party library. I've gotten to the point now where memory management isn't really something I need to think about anymore. I'm curious if the other people working in C++ are using them? Or do some sort of project limit prevent you from using them?
 

Tuco

I got Tuco'd!
<Gold Donor>
45,453
73,543
I use shared_ptrs a lot. They're fine. A lot of the times I don't use them is just because I want to manage the memory myself, don't want the shared_ptr constructs mucking around or just because the syntax of std::shared_ptr<Student> student; is more annoying than Student * student;
 

Tenks

Bronze Knight of the Realm
14,163
606
Linq doesn't manage memory it is a tool for querying datasets. C# developers rave about it but I never really understood the point. I used it a few times in college and it felt like a novelty. I guess having a single tool to query XML, SQL and collections is pretty cool but I couldn't think of many real world applications for it.



Just realized Noodle wasn't talking to me
 

Tripamang

Naxxramas 1.0 Raider
5,220
31,832
I use shared_ptrs a lot. They're fine. A lot of the times I don't use them is just because I want to manage the memory myself, don't want the shared_ptr constructs mucking around or just because the syntax of std::shared_ptr<Student> student; is more annoying than Student * student;
heh I'm not sure the syntax would ever hold me back from using it. Honestly if used properly they basically idiot proof memory management in C++, at least in our use patterns. I can't wait till C++/17 with future/promises.. they make multi-threading so insanely simple. I used to think that C++ was going to die a slow death, but a lot of the recent/future improvements make me think it'll make some degree of a come back.
 

Tuco

I got Tuco'd!
<Gold Donor>
45,453
73,543
Yeah there's nothing wrong with exclusively using shared_ptr to manage your memory allocation of objects. I haven't benchmarked with the performance cost is if you're constantly incrementing and decrementing the usage count if you make frequent function calls and pass a ton of shared_ptrs around, but that can be gotten around by just using a pointer (or ref is possible).

I just do so much memory management beyond class instantiation that doing class instantiation with new/delete isn't a burden. If I'm writing a video encoder class and need to allocate dynamic amounts of memory to handle video packets, the allocation of that class and de-allocation isn't a hazard in comparison.
 

Khane

Got something right about marriage
19,841
13,357
LINQ is essentially shorthand that allows you to query collections of data in a very SQL esque fashion that is both easier to read, more concise, and (usually) faster. It basically turns procedural lookups into set based lookups
 

ShakyJake

<Donor>
7,641
19,281
I, too, have heard the C# shits on Java statement over and over but I've never actually seen a concise list of the features C# holds over Java.
I don't have any professional experience with Java, but I did read two giant tomes on Java 8 just recently. The impression I got was that it's very similar to C# - very easy to learn if one knows the other. Java often requires more boilerplate code to do the same thing, though (e.g. no auto properties like C# and LINQ as mentioned elsehwere). Also, for desktop apps I'm not sure how JavaFX compares to WPF. WPF, at this point, is pretty mature and JavaFX isn't as full-featured. Assuming, of course ones cares about desktop stuff.
 

Cad

<Bronze Donator>
24,492
45,417
Regardless of which one is better I'd automatically choose Java because Microsoft. But then Oracle owns Java now, so...
 

ShakyJake

<Donor>
7,641
19,281
Regardless of which one is better I'd automatically choose Java because Microsoft. But then Oracle owns Java now, so...
Personally, I'm now more interested in other JVM languages, such as Groovy or Scala. I've heard cool things about Groovy -- about how it removes a lot of the "gunk" you have to deal with in Java.
 

CnCGOD_sl

shitlord
151
0
The sales engineer in me sees that while c# is a great language, a vast majority of shops that use it are stone age abominations.

The trends I see are that Python and Scala are both on the rise, have a new hire on my team that came from Typesafe showing me the light on the awesome of Scala. That and the innovations coming from Spark are changing a lot on the data side.
 

Tenks

Bronze Knight of the Realm
14,163
606
Personally, I'm now more interested in other JVM languages, such as Groovy or Scala. I've heard cool things about Groovy -- about how it removes a lot of the "gunk" you have to deal with in Java.
I've programmed in Groovy at my work and it is a pile of shit. It is cool for prototyping and really, really nice for writing your tests but it should not be in prod. It runs like shit. Everything is a reflective call so it takes forever.

It does have a nice syntax for Closures and Collections, though
 

Vinen

God is dead
2,783
490
The sales engineer in me sees that while c# is a great language, a vast majority of shops that use it are stone age abominations.

The trends I see are that Python and Scala are both on the rise, have a new hire on my team that came from Typesafe showing me the light on the awesome of Scala. That and the innovations coming from Spark are changing a lot on the data side.
I could say the same thing about Java.
Python and Scale are also built to serve completely different uses then C# and Java.
It shocks me to see an Architect (you) see languages as all being designed to solve the same problem.

Please never use a language just because its hip and cool.
 

Tenks

Bronze Knight of the Realm
14,163
606
I needed to mock a whole bunch of shit for some testing so I thought "Hey that Groovy is pretty good with GMock and it's ease of coding test cases"

Language is fucking RIP'd. GMock is dead. Google it and all you get is results for GoogleMock which is apparently a C++ mocking framework. So yeah if you were planning on learning Groovy I wouldn't bother.
 

Noodleface

A Mod Real Quick
37,961
14,508
Man I gotta say dealing with writing code around security in firmware is absolutely bullshit. I have to write some stuff about self-encrypting drives and the things we need to do to make it 'right' are absurd. And there's no documentation on any of this shit because they don't want it to get into the wrong hands, so you basically piece it together through their code or put in a request and wait months for an answer. I mean, I can see your key right there in plain text in the code, but you won't give me documentation on the protocol you use to access the disk.