Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 399 400 [401] 402 403 ... 796

Author Topic: if self.isCoder(): post() #Programming Thread  (Read 902804 times)

Gatleos

  • Bay Watcher
  • Mournhold... City of Light... City of MAGIC!
    • View Profile
    • Someone Sig This
Re: if self.isCoder(): post() #Programming Thread
« Reply #6000 on: June 19, 2014, 05:02:46 am »

Well, I reached the threshold. This placement test I'm taking today to skip my university's CS 101 class is free since I transferred an equivalent credit from another school... But after this I'm going to have to start paying to become a real CS major. It's not that I'm having second thoughts about programming as a career path, I've been programming for about 4 years now and most of what I know is self-taught. I like programming just fine.

But that's the rub, what am I really doing getting a degree for this? I have experience, and I have resources to continue learning outside an academic environment. I know, college is a great place to make connections, get used to working in teams, get internships on a resume... but it's hard not to feel like I'm about to put myself in crippling debt in exchange for a piece of paper with my name on it.

Probably too heavy for this thread. Maybe I should have posted in Life Advice. I don't know. I just had to get this written down somewhere.
Logged
Think of it like Sim City, except with rival mayors that seek to destroy your citizens by arming legions of homeless people and sending them to attack you.
Quote from: Moonshadow101
it would be funny to see babies spontaneously combust
Gat HQ (Sigtext)
++U+U++ // ,.,.@UUUUUUUU

miauw62

  • Bay Watcher
  • Every time you get ahead / it's just another hit
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #6001 on: June 19, 2014, 06:23:51 am »

C# is pretty awesome. I don't know how cross platform it is, but it has all the features of a higher level language (no extra libraries needed for stuff 80% of the time, it's all in the std lib, and GC is cool), with the syntax of C++, without the cruft of Java. :D


But manually handling memory when you really need to -- I needed to deallocate a huge bitmap to put another into memory, but the GC didn't cooperate--along with handling raw data quickly is kinda awkward. You need to tag functions with unsafe for C#.

I'm sad that my familiarity with c++ is going to be useless later in life :'(
I doubt it'll be useless.
There is still huge amounts of C and C++ code out there, and somebody's gotta maintain that shit yo :v

But yeah, I second C# being awesome.
Logged

Quote from: NW_Kohaku
they wouldn't be able to tell the difference between the raving confessions of a mass murdering cannibal from a recipe to bake a pie.
Knowing Belgium, everyone will vote for themselves out of mistrust for anyone else, and some kind of weird direct democracy coalition will need to be formed from 11 million or so individuals.

Skyrunner

  • Bay Watcher
  • ?!?!
    • View Profile
    • Portfolio
Re: if self.isCoder(): post() #Programming Thread
« Reply #6002 on: June 19, 2014, 06:30:21 am »

Random question: How do you do graphics in Android, for something like a 2D game? The only method I know of is blitting things directly, but that seems rather inefficient *and* not very scalable what with different screen sizes. Same with a UI. @_@ I'm posting this because I feel nostalgia for Spybots:Nightfall Incident, and it's why I first thought of starting programming nearly three years ago. That time I failed badly because I didn't know how to program, but I think I can handle everything except AI easily now. Just needs man-hours and getting used to the Android system (and Java)... maybe?
Logged

bay12 lower boards IRC:irc.darkmyst.org @ #bay12lb
"Oh, they never lie. They dissemble, evade, prevaricate, confoud, confuse, distract, obscure, subtly misrepresent and willfully misunderstand with what often appears to be a positively gleeful relish ... but they never lie" -- Look To Windward

Telgin

  • Bay Watcher
  • Professional Programmer
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #6003 on: June 19, 2014, 07:36:18 am »

I assumed that Android supported OpenGL?  If that's true and it supports a remotely modern version then there are plenty of efficient ways to render sprites.  I think vertex buffer objects (VBOs) and texture atlases for animation are the norm now.  You just render a couple of triangles per sprite in the form of a quad, and texture it with a slice of your texture to represent one frame of the animation.  Change the texture slice to animate.

Handling different screen sizes is a different problem that I can't really help too much on.

Well, I reached the threshold. This placement test I'm taking today to skip my university's CS 101 class is free since I transferred an equivalent credit from another school... But after this I'm going to have to start paying to become a real CS major. It's not that I'm having second thoughts about programming as a career path, I've been programming for about 4 years now and most of what I know is self-taught. I like programming just fine.

But that's the rub, what am I really doing getting a degree for this? I have experience, and I have resources to continue learning outside an academic environment. I know, college is a great place to make connections, get used to working in teams, get internships on a resume... but it's hard not to feel like I'm about to put myself in crippling debt in exchange for a piece of paper with my name on it.

Probably too heavy for this thread. Maybe I should have posted in Life Advice. I don't know. I just had to get this written down somewhere.

I briefly thought the same before I went into undergrad, but I learned a lot more from it than I anticipated.  Some of it is directly useful in the industry, like working with requirements, testing and delivery, but much of it is still theoretical stuff that's generally just interesting to think about.  Anything you learn in Theory of Computation is unlikely to matter much in practice.  Even algorithmic complexity stuff rarely, if ever, crops up in practice.

Anyway, if you can get a job on your experience alone, then that might not be a terrible thing.  My manager has no degree of any sort and does lots of programming, but he was a personal friend of some of the higher ups in our small company so he kind of got a pass there.

In general though, that piece of paper is going to matter a pretty good bit.  It will probably be needed a lot to get your foot in the door to even show you have experience.
Logged
Through pain, I find wisdom.

MorleyDev

  • Bay Watcher
  • "It is not enough for it to just work."
    • View Profile
    • MorleyDev
Re: if self.isCoder(): post() #Programming Thread
« Reply #6004 on: June 19, 2014, 08:01:00 am »

Skyrunner: Modern android Android supports OpenGL ES 2 I believe. Now, if you don't want to be writing shaders and manipulating vertices and all the fun stuff ES2 requires, there is deprecated support for OpenGL ES 1.x, which uses the fixed-function pipeline closer to older versions of OpenGL.

Of course, if you don't want to touch OpenGL there are other options depending on the language.
Some examples,
Java: libGDX [Windows/Linux/Mac/Android/BlackBerry/iOS/HTML5], possibly the most common one people use for 2D games.
C#: MonoGame [iOS/Android/Mac/Linux/Windows/Windows Phone 8], an XNA-like framework.
C++: SDL, SDL2 and SFML all have Android and iOS bindings. SDL and SDL2 are highly cross-platform, whilst SFML is primarily desktop-focused and the Android/iOS support is mostly experimental at the moment.

Gatleos: In development, who you know can really help with getting a job. If you can find any tech meet-ups in your area, go to them and just get talking to the people there. You can get talking to them, ask for advice, as they'll know the tech scene in your area fairly well. If you mention you already know how to program, I honestly wouldn't be surprised if some of them gave you their card and asked you to get in touch with the company they work at, I've seen it happen. We had a guy at my work placement who worked there for his gap year between college and university (UK) and he actually turned down an offer to just stay working there as a full-time employee to go to university.

---------

You know, I honestly reckon C++'s biggest handicap nowadays is dependency management. If there was a nice standardised system like NuGet or SBT that worked across multiple compilers, projects would be so much easier to set-up.

I've written a tool that uses CMake to automate building and installing of dependencies, uses a backing API that tells it how to acquire the source code and cmake to automatically build and install that code, but I still need to add version support and the ability to customise builds a bit more (ability to set custom CMake flags and the like, on both the client and server side) before it's really useful.
« Last Edit: June 19, 2014, 08:09:50 am by MorleyDev »
Logged

Skyrunner

  • Bay Watcher
  • ?!?!
    • View Profile
    • Portfolio
Re: if self.isCoder(): post() #Programming Thread
« Reply #6005 on: June 19, 2014, 08:10:00 am »

I'm going through the Android app dev tutorial on their site, and so far my feelings are summarized with this: "Android is weird."

All these "intents" and "fragments".. how do you even get a game working with this?
Logged

bay12 lower boards IRC:irc.darkmyst.org @ #bay12lb
"Oh, they never lie. They dissemble, evade, prevaricate, confoud, confuse, distract, obscure, subtly misrepresent and willfully misunderstand with what often appears to be a positively gleeful relish ... but they never lie" -- Look To Windward

Valid_Dark

  • Bay Watcher
  • If you wont let me Dream, I wont let you sleep.
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #6006 on: June 19, 2014, 05:06:49 pm »

It's hard for me to get the motivation to program, but once I start I don't want to stop and end up programming for hours.

Doing a final round of bug fixing on a user selection screen, then porting the whole thing over to SDL2. And then I get to start with the actual program.
This user selection screen took far too long, because I took a few breaks from it for a few months at a time.

But now I'm going to buckle down and get some real work done on this,

I'm working on a game that teaches the basics of C++, Because I'm always seeing people trying to learn using online resources, and I know how bad the online resources are. 
Logged
There are 10 types of people in this world. Those that understand binary and those that don't


Quote
My milkshake brings all the criminals to justice.

MadocComadrin

  • Bay Watcher
  • A mysterious laboratory goblin!
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #6007 on: June 22, 2014, 10:15:00 am »

But that's the rub, what am I really doing getting a degree for this? I have experience, and I have resources to continue learning outside an academic environment. I know, college is a great place to make connections, get used to working in teams, get internships on a resume... but it's hard not to feel like I'm about to put myself in crippling debt in exchange for a piece of paper with my name on it.

You learn a lot of theory, a little bit of hardware and a lot of nuances that would take a while to pick up elsewhere. It's similar to math in my opinion: you can just learn the tools to do the calculations or you can actually learn math as a whole and see the big picture.

Also, if you ever want to get a Master's degree and specialize into say, Algorithm design and analysis, hardcore graphics or some other subject, you need some of the stuff taught in your CS degree that a normal code monkey wouldn't need.
Logged

Gentlefish

  • Bay Watcher
  • [PREFSTRING: balloon-like qualities]
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #6008 on: June 23, 2014, 01:37:46 pm »

Plus, at least for me, I don't think I'd be able to get my hands on robotics WITHOUT a degree in CS. At the very least I could made disembodied VI.

alway

  • Bay Watcher
  • 🏳️‍⚧️
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #6009 on: June 23, 2014, 04:14:59 pm »

But that's the rub, what am I really doing getting a degree for this? I have experience, and I have resources to continue learning outside an academic environment. I know, college is a great place to make connections, get used to working in teams, get internships on a resume... but it's hard not to feel like I'm about to put myself in crippling debt in exchange for a piece of paper with my name on it.
1. Networking. You should come out of any decent program knowing a bunch of other CS majors. I know dozens of people from my university, working everywhere from microsoft and apple to indie game studios. Assuming you proved yourself to be a good programmer, that's people who can help you find jobs or who could fill potential needs at your company.
2. Career services. You should come out of any decent program with the ability to find and successfully apply to jobs. That means portfolio websites, resumes, ect. Some programs don't do well in the regard; and those programs you may be best off avoiding.
3. People to challenge you. It's good to be around a bunch of peers whose work you can look at and draw inspiration from, and compete to make yourselves better.
4. Learn what you need to learn. Learning to code is easy. Learning what you need to learn is hard. That should be the role of a CS program: to point out the gaps in your skills, so that you may fill those gaps at your leisure.
Logged

Telgin

  • Bay Watcher
  • Professional Programmer
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #6010 on: June 23, 2014, 05:33:15 pm »

There's a lot of truth in alway's post there.  In particular, while getting knowledge is the primary goal of getting a degree at a university, it's almost at least as much about meeting other people networking.  In fact, I really, really think it should be required to get internships in more programs.  At my university it wasn't required, although it was an option for CS majors (CE majors like me didn't really have time to fit it in the schedule).  Getting that job experience, both as something to put on your resume and for the experience itself, is worth as much as the degree.  I highly, highly recommend searching out internships.  I only managed to get my job by absolute blind luck, via a flyer in our engineering building during my last semester as an undergrad.  I really should have started looking much sooner.

The internship / job experience thing is triply true in graduate programs.  I got a great internship at a national laboratory specifically because my advisor knew someone there and recommended me to him.  Being an American helped, to be honest, since we're a minority in the CS graduate program here it seems and it was only available to Americans, but I digress...

Even if you've got a job and work experience now, it's a good opportunity to improve your options on that front through knowing people alone.
Logged
Through pain, I find wisdom.

Mephisto

  • Bay Watcher
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #6011 on: June 27, 2014, 02:54:01 pm »

My first exposure to Usenix (downloaded this column months ago, didn't read until today) is James Mickens' last column. It's well worth a read.
Logged

GlyphGryph

  • Bay Watcher
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #6012 on: June 27, 2014, 04:23:01 pm »

So, do you guys have a favorite operator?

Mine is the spaceship operator, and I wish more languages used it.
Logged

Levi

  • Bay Watcher
  • Is a fish.
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #6013 on: June 27, 2014, 04:29:26 pm »

So, do you guys have a favorite operator?

Mine is the spaceship operator, and I wish more languages used it.

Me too.  Spaceship operator is best operator.

Second best operator is good old questionmark-colon.
Logged
Avid Gamer | Goldfish Enthusiast | Canadian | Professional Layabout

Telgin

  • Bay Watcher
  • Professional Programmer
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #6014 on: June 27, 2014, 04:59:00 pm »

Huh, I've never seen the spaceship operator.  It looks like something that wouldn't come up very often, but I suppose it's handy when it does.

Anyway, my favorite recently discovered niche operator would be the "goes to" or "down to" "operator" from some C like languages: link
Logged
Through pain, I find wisdom.
Pages: 1 ... 399 400 [401] 402 403 ... 796