does anyone work primarily in C++ at their job that's not graphics/vectors related? i'm looking for other places that do C++ too :/
The Big Programming Thread - Page 605
Forum Index > General Forum |
Thread Rules 1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution. 2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20) 3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible. 4. Use [code] tags to format code blocks. | ||
Blisse
Canada3710 Posts
does anyone work primarily in C++ at their job that's not graphics/vectors related? i'm looking for other places that do C++ too :/ | ||
Cyx.
Canada806 Posts
On March 17 2015 09:33 Blisse wrote: employment problems :'D does anyone work primarily in C++ at their job that's not graphics/vectors related? i'm looking for other places that do C++ too :/ I did static analysis in C++ last summer, and I'm doing industrial-scale identity management (think passwords, user login info, etc. across like five million different accounts) in C++ this year :D It's definitely possible to find C++ jobs that aren't graphics or math related at all. | ||
Lascero
United States59 Posts
On March 17 2015 03:49 r3dox wrote: 1) if you were to apply at my company and say that, I would ask you what you tried to improve your situation... did you ask for continued code reviews to improve quality? did you look into areas that could be tested automatically? did you suggest deciding coding standards? We were told to do them sparingly, for example, fixes that we need to patch asap, product specific stuff that won't be on google. The guy does have 15 years on this code base and is very actively coding so I think he'd just rather not spend the time with a formal review for all of us and get new architecture and features pushed out while we sort of learn on our own. I really can't make a convincing argument against this in the face of 15 years of authority and it beats having a manager that just sits around. Or maybe it just plainly isn't a good idea to do them for a long time - cut out the people who can't learn on their own. Or maybe we're all already good enough for the positions they hired us for so it would be wasted effort when we could be making things to sell. It seemed like a strange thing to do when a lot people on forums and reddits assume the junior programmer is going to wreck everything, so watch him very closely. We're still learning of course, but since the coding standard was basically "Do what everyone else does", our role model has things like 20k+ line classes and brute force approaches in some places. Some of its good, but you can tell where things have just built up over time or were done with the absolute language basics. Debugging is hell at times. He apparently trusts my code quality, but I don't think I trust myself yet. There was some automated testing and we do have a QA department. They do some of it, and they are good, but they don't really get the coverage and automation that a large, automated testing project can get (I think), but the company came under new management and the guy doing that got cut (along with like 2/3rds of the company - then we got hired). Me doing that would take time away from working in other areas, and when I did bring it up, it was really made clear what I should be working on. I've never really done testing frameworks for large projects, so it's not like I had a ready-made solution but I was hoping to learn that side of development. As much as I would like something like an apprenticeship, I think may just have to suck it up and fix it myself if what I'm looking for is unrealistic. This may be a case of Expectations != Reality, but that doesn't mean I have to stick to one place! | ||
windzor
Denmark1013 Posts
On March 17 2015 09:33 Blisse wrote: employment problems :'D does anyone work primarily in C++ at their job that's not graphics/vectors related? i'm looking for other places that do C++ too :/ Graphics works is like the smallest field with C++? I think 90% of my companies codebase of ~5 mloc is C++ for server and userspace applications for Windows/Mac/Linux/Sun/AIX. We only got some web stuff for GUI and some java for protocol transport. | ||
Gowerly
United Kingdom916 Posts
On March 17 2015 09:52 Cyx. wrote: I did static analysis in C++ last summer, and I'm doing industrial-scale identity management (think passwords, user login info, etc. across like five million different accounts) in C++ this year :D It's definitely possible to find C++ jobs that aren't graphics or math related at all. I'm a UI/Systems engineer in video games. Largely either deciphering platform specific functionality and wrapping it up or working through flows. Neither graphics nor vector related. also On March 17 2015 06:35 nunez wrote: ah, i have found that my job not only exhaust, but also perverts my desires. i find it difficult to decouple from whatever problem i am facing at work, and my pet projects end up being solving the same problems, except phrased more comfortably. "When you get a shiny new hammer, everything looks like a nail" | ||
Aerisky
United States12128 Posts
It appears that what they're looking for is the following: Front-end-wise: HTML5, CSS3, Javascript, Coffeescript, Sass, AngularJS Back-end-wise: Ruby, Rails, APIs, Redis, PostgreSQL, API, Elastic Search (mostly Rails, SQL) Given that I would potentially be working on both (but more interested in backend I *think*), how might I go about learning in the 2-month interim? The thing is I still don't quite understand how web development even really integrates haha. I'm most interested in this offer, but I'm just unexperienced in webdev and don't know where to start. Thanks so much! | ||
spinesheath
Germany8679 Posts
On March 17 2015 06:35 nunez wrote: ah, i have found that my job not only exhaust, but also perverts my desires. i find it difficult to decouple from whatever problem i am facing at work, and my pet projects end up being solving the same problems, except phrased more comfortably. I do my own thing outside of work. I use the same language at work and at home, but at home I don't intentionally solve any problems I have at work (except once, where the problem required some research on reflection which I found interesting regardless of purpose). At home I research and enforce very high code quality which often leads to insights that I try to make part of our coding standard at work (this is a slow process...). But once again I only do that out of personal interest. | ||
r3dox
Germany261 Posts
On March 17 2015 10:54 Lascero wrote: ... As much as I would like something like an apprenticeship, I think may just have to suck it up and fix it myself if what I'm looking for is unrealistic. This may be a case of Expectations != Reality, but that doesn't mean I have to stick to one place! I didnt say applying for a different Job is unrealistic or that you have to stick to one place, I only meant that when you say that in a Job interview, you better make sure you have a Story to tell on stuff you tried to improve the Situation. I would not hire somebody who complains about the Situation in his old Job but has not tried anything to fix the Problems himself. Looks like you put some thought into the Areas that Need improvement. Although i would argue that the main coder is forgetting the Long term when he does not Review code of Junior coders, because he is so busy working on the code himself. talking about the Long run, this recent dilbert Comes to mind: http://dilbert.com/strip/2015-03-16 | ||
enigmaticcam
United States280 Posts
I started out simple. I want the algorithm to produce a string of integers where all integers are the same as some target. For example, I want a 10 character string where all characters are the number 7 ("7777777777"). The first generation will be 100 random strings of numbers from 0 to 7 and each will be 10 digits long. Each generation will get closer and closer to the answer where all 10 are the number 7. For the most part, what I've coded works. Most of the time it's able to solve it somewhere between 10 and 50 generations. However, occasionally it will never solve it. I'll let it go to 20,000 generations and it still won't find the answer. I've isolated the problem to be some sort of limitation in the random number generator. If I seed my RNG with a specific number, it will never diverge to the answer no matter how long I let it run. Any ideas?! Edit: Nevermind! I found that in fact I WASN'T traversing the entire length of the bit string for mutation checks. My bad. Sorry, guess I just needed to talk it out to find the answer. | ||
Acrofales
Spain17852 Posts
On March 18 2015 03:53 enigmaticcam wrote: So I'm working on building my own genetic algorithm, but I've got a problem I'm not sure how to solve. I started out simple. I want the algorithm to produce a string of integers where all integers are the same as some target. For example, I want a 10 character string where all characters are the number 7 ("7777777777"). The first generation will be 100 random strings of numbers from 0 to 7 and each will be 10 digits long. Each generation will get closer and closer to the answer where all 10 are the number 7. For the most part, what I've coded works. Most of the time it's able to solve it somewhere between 10 and 50 generations. However, occasionally it will never solve it. I'll let it go to 20,000 generations and it still won't find the answer. I've isolated the problem to be some sort of limitation in the random number generator. If I seed my RNG with a specific number, it will never diverge to the answer no matter how long I let it run. I dug a little further and found that certain bits are never set to either 1 or 0, despite the fact that I verified that both the random crossover and mutation indexes cover the entire length of the string. For example, when I seed my RNG to 115, the eight bit is NEVER set to a '1'. The bit is of course mutated all the time, but oddly enough it's always mutating from '1' to '0'. Any ideas?! Use a different RNG? | ||
enigmaticcam
United States280 Posts
| ||
Ropid
Germany3557 Posts
On March 18 2015 04:34 enigmaticcam wrote: I'm using C#.net and the Random class. Are there others? You need to search for something called "low-discrepancy sequence". Compared to random numbers, using those numbers can actually improve performance for genetic algorithms from what I heard, so you should probably add "genetic algorithm" to your search terms to make sure to find out how things tie together. | ||
Manit0u
Poland17200 Posts
On March 18 2015 02:38 Aerisky wrote: I somehow managed to get an internship offer from a company I really liked, but thing is, I only know academic cs (data structures, algorithms, operating systems) and the company is in need of web developers. I have no web dev experience almost whatsoever. They have need of both front/back-end developers, and I was wondering whether there could be anything I could do to prepare. I only have the most basic HTML/CSS/js experience, and I took a class on Rails and understand the MVC framework, but I didn't get much out of it otherwise (don't really learn Ruby and class was very basic). It appears that what they're looking for is the following: Front-end-wise: HTML5, CSS3, Javascript, Coffeescript, Sass, AngularJS Back-end-wise: Ruby, Rails, APIs, Redis, PostgreSQL, API, Elastic Search (mostly Rails, SQL) Given that I would potentially be working on both (but more interested in backend I *think*), how might I go about learning in the 2-month interim? The thing is I still don't quite understand how web development even really integrates haha. I'm most interested in this offer, but I'm just unexperienced in webdev and don't know where to start. Thanks so much! First of all, forget about front-end. 2 months isn't nearly enough time to learn all of the necessary CSS and JS magic you'll have to work with. Assuming it's for business applications and not simple websites you'd have to do a lot of stuff with JS and make sure it'll work across different browsers (the dreaded IE8 for example). The backend is doable. I suggest you grab a hold of TutsPlus Build a CMS with Symfony2 video tutorial. You just do what the guy in the videos does, it doesn't take long (should be able to complete it in a single day even accounting for extra time needed for further research) but'll get you jumpstarted on how the MVC frameworks really work and how to do stuff with it. I recommend it not because it'll teach you how to do everything but with it you'll be able to build an entire working application on your own. The biggest gripe for me when I was beginning was that I felt really lost without any prior experience (like you). If I had gone through this tutorial before I started working, instead of relying just on online documentation and your usual guides it would be 100x easier for me. For the first month or two it's quite hard to wrap your head around all of the MVC structure, including templating engines, REST/SOAP APIs, version control and all that jazz. The problem with web development is that you need to know a lot of stuff about many things that in theory shouldn't be your concern like: can I pass an object to the view? If I can, does this framework have templating engine that can handle it? Can I use my backend language in the views to handle stuff and how hard is it? What is the directory structure for the MVC project (trust me, this can catch a lot of people off-guard, especially when you can break your views in partials, each module having its own js/css files, translations etc. etc.). Long story short: You'll have to learn a lot, both front- and back-end stuff to be able to do any of them. The fact is that you won't be able to learn most of the stuff you'll need in 2 months so just focus on one thing (I suggest getting familiar with MVC frameworks) and try to get some general knowledge in the other areas (JS, CSS, HTML) since you'll need that too. | ||
Aerisky
United States12128 Posts
Makes a lot of sense that you'd have to understand both front- and back-end as you're saying, since the systems are totally integrated. Thanks so much! I'll check out that tutorial and start plugging away! | ||
obesechicken13
United States10467 Posts
| ||
Mindcrime
United States6899 Posts
On March 18 2015 05:42 Manit0u wrote: The fact is that you won't be able to learn most of the stuff you'll need in 2 months so just focus on one thing (I suggest getting familiar with MVC frameworks) and try to get some general knowledge in the other areas (JS, CSS, HTML) since you'll need that too. I don't know about "need". I do backend web development and I haven't written any CSS or HTML at all in this position, though I did write a line or two of JavaScript a few months ago (It didn't work on some ancient version of IE that we still support and got me a finger wagging from our UI team). edit: I take that back. I did change tab indexes on one page like sixmonths ago. | ||
Khalum
Austria831 Posts
On March 17 2015 07:21 Acrofales wrote: I have to say that that is a pretty normal reaction in my experience. When studying, I had fun with some pet projects. Nowadays unless it serves a serious purpose (work or a course), I don't program anything at home. I coded a lot in my free time while I was at University. Nowadays I just drink in my free time... | ||
Manit0u
Poland17200 Posts
On March 18 2015 06:04 Aerisky wrote: Whoa, thanks so much Manit0u! Wow I didn't realize a lot of that, esp how difficult front-end would be. Coming from an academic cs background I used to think web dev was pretty simple/not "real" programming because there's not much in the way of data structures or algorithms that I'm used to (mostly applies to front-end I suppose?). Regardless I've quickly realized that it's actually a whole other beast haha :x Makes a lot of sense that you'd have to understand both front- and back-end as you're saying, since the systems are totally integrated. Thanks so much! I'll check out that tutorial and start plugging away! Note that I also didn't mention databases. Those are important too and you must know both relational and non-relational database types (and various implementations of each to boot) to build the big chunk of the model part of your MVC... On March 18 2015 07:45 Mindcrime wrote: I don't know about "need". I do backend web development and I haven't written any CSS or HTML at all in this position, though I did write a line or two of JavaScript a few months ago (It didn't work on some ancient version of IE that we still support and got me a finger wagging from our UI team). edit: I take that back. I did change tab indexes on one page like sixmonths ago. Depends on where you work I guess. So far I've worked at 3 different webdev companies and had to do varying degrees of front-end work. In my first job I had to do both front- and back-end in equal measure since we were just 4-5 people working on quite big projects and everyone had to do everything. The second job was easier since we had dedicated front-end people but the workload was so huge that I had to do some easier parts myself. Now in theory I shouldn't be doing any front-end work but one guy left and the other one got fired so until we get new people (or after the merge with another company next week is finished) I have to do some front-end again. Thankfully the company I'm working at now is only doing SaaS so I don't need to do anything super fancy or beautiful-looking. | ||
Zocat
Germany2229 Posts
On March 18 2015 07:42 obesechicken13 wrote: I imagined you'd learn a lot about web from CS. Why? web is a subgroup of software engineering and you can have a cs degree with a minimum of courses in SE. The 1st half of my 1st semester was a bit about programming (back then schools didn't have mandatory classes, so it was used to bring everyone up to the same level (if/else, loops, recursion, ...)). Everything else was "here's your exercise, do it, teamwork is allowed". From there you are free to do what you want. Sure, if you take software engineering / database courses you will learn something about web programming. But if you prefer algorithms (graphs, ...), ai, crypto, robotic, image processing, ... you won't touch anything web related. Yes, there is interdisciplinary stuff and you can combine those. But overall you are not required to do that. Overall there's large misconception that a "cs degree" is a "programming degree". That's why a lot of graduates are actually really bad in the industry. They did the minimum work required (teamwork leeching grades) and are not capable of programming. Being a good programmer while getting a cs degree takes additional effort from the individual. | ||
obesechicken13
United States10467 Posts
On March 18 2015 08:46 Zocat wrote: Why? web is a subgroup of software engineering and you can have a cs degree with a minimum of courses in SE. The 1st half of my 1st semester was a bit about programming (back then schools didn't have mandatory classes, so it was used to bring everyone up to the same level (if/else, loops, recursion, ...)). Everything else was "here's your exercise, do it, teamwork is allowed". From there you are free to do what you want. Sure, if you take software engineering / database courses you will learn something about web programming. But if you prefer algorithms (graphs, ...), ai, crypto, robotic, image processing, ... you won't touch anything web related. Yes, there is interdisciplinary stuff and you can combine those. But overall you are not required to do that. Overall there's large misconception that a "cs degree" is a "programming degree". That's why a lot of graduates are actually really bad in the industry. They did the minimum work required (teamwork leeching grades) and are not capable of programming. Being a good programmer while getting a cs degree takes additional effort from the individual. Yeah but if you take just one project based course in web development, you'd hear about angular and mvc and frameworks even if you didn't understand them. Professors like to incorporate real world technologies into their lectures. It's one branch of cs that you don't need to go too deep into to hear these things and get a high level understanding of them. I'm not saying cs is just a programming degree. And I don't think that's true. | ||
| ||