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
Maluco Marinero
Jan 18, 2001

Damn that's a
fine elephant.

SlightlyMadman posted:

There was definitely something to be said for checking out a book full of video games from the library for free.

edit: This was the poo poo, right here:


Aha, yep yep. First exposure to programming right there when I was 6.

Adbot
ADBOT LOVES YOU

csammis
Aug 26, 2003

Mental Institution


Good times :v:

I've decided that I want to learn OpenGL since I never took a graphics course and have been pretty terrible at geometry and trig. You know, something different for a change. So far I've used Manslaughter's lightning algorithm to generate a list of vertices, normalized them into a cube, and recorded the intersection with the boundaries so I can eventually draw something more interesting than a red square.



It's slow going but at least I've got time to play with a project outside of work these days :unsmith:

Mug
Apr 26, 2005

Thermopyle posted:

Typing code out of magazines was fun!

I busted these out today to tweet them @ Sos Sosowski, they're where I learned to make games for my Amstrad. Still on my shelf.
https://twitter.com/manfightdragon/status/259200205881217024/photo/1

Anyway, for a little content, instead of a screenshot here's a video cross posted from the making games megathread. Shows the tools I made for making content for my game in action, and then the level I make running briefly in the game engine.
https://www.youtube.com/watch?v=azG3XDUFHmI

SlightlyMadman
Jan 14, 2005

It always makes me wonder: why don't they make programming books for kids anymore? BASIC is still around, and python would probably be just as easy to learn. And a good verbose API would make it a lot easier to understand than all the PEEKs and POKEs we had to deal with.

Shalinor
Jun 10, 2002

Can I buy you a rootbeer?

SlightlyMadman posted:

It always makes me wonder: why don't they make programming books for kids anymore? BASIC is still around, and python would probably be just as easy to learn. And a good verbose API would make it a lot easier to understand than all the PEEKs and POKEs we had to deal with.
They do, they just use C++ these days. When I was growing up, they'd often do C with a library to make graphics easier (Allegro, etc).

... you know, I bet these days, kids would mostly be targeted with Unity based game dev books. Good UI tools, easy to ease them into the harder stuff, easy to get cool stuff happening instantly. I suppose I'm ok with this, and I bet kids stick with it better than the C++ books that take ages to get to graphics / barely explain how to make something more general than their narrow little graphics demos.

EDIT: a cursory Amazon search shows a Game Maker book too. Makes sense.

Shalinor fucked around with this message at 14:51 on Oct 19, 2012

Bob Morales
Aug 18, 2006


Just wear the fucking mask, Bob

I don't care how many people I probably infected with COVID-19 while refusing to wear a mask, my comfort is far more important than the health and safety of everyone around me!

SlightlyMadman posted:

It always makes me wonder: why don't they make programming books for kids anymore? BASIC is still around, and python would probably be just as easy to learn. And a good verbose API would make it a lot easier to understand than all the PEEKs and POKEs we had to deal with.

They have a ton of '_____ for teens' books in the stores



I haven't checked out that one, but some of the other ones are really bad. They'll show you how to use some tool/engine then they just jump into a pathfinding algorithm in C#

KoRMaK
Jul 31, 2012



csammis posted:



Good times :v:

I've decided that I want to learn OpenGL since I never took a graphics course and have been pretty terrible at geometry and trig. You know, something different for a change. So far I've used Manslaughter's lightning algorithm to generate a list of vertices, normalized them into a cube, and recorded the intersection with the boundaries so I can eventually draw something more interesting than a red square.



It's slow going but at least I've got time to play with a project outside of work these days :unsmith:
This is pretty cool. Extending it to 3 dimensions probably isn't that hard is it? Something like extending perlin noise to 3d? I should make all of those procedural based things I have bookmarked and studied but never implemented. L-systems, trees, fractals, etc.

Bob Morales posted:

They have a ton of '_____ for teens' books in the stores



I haven't checked out that one, but some of the other ones are really bad. They'll show you how to use some tool/engine then they just jump into a pathfinding algorithm in C#
I still think its a good idea to hand out Tandy color computers to middle schools and teach them some BASIC. Or can a 6th grader grasp C#/DirectX? Man they might be able too. If I learned that stuff back then by now I'd be able to visualize vertex data in real time like reading sheet music.

SlightlyMadman
Jan 14, 2005

KoRMaK posted:

I still think its a good idea to hand out Tandy color computers to middle schools and teach them some BASIC. Or can a 6th grader grasp C#/DirectX? Man they might be able too. If I learned that stuff back then by now I'd be able to visualize vertex data in real time like reading sheet music.

Internet Janitor's emulator has me thinking that it would be interesting to write something similar, but that also has a full and verbose API. Hell, you could probably write it in flash or javascript and put it on a website along with the tutorials. Just disable paste so you make those little shits type it in because that's the only way you'll learn.

tef
May 30, 2004

-> some l-system crap ->

SlightlyMadman posted:

Nice, you type the line numbers in with your code, so you can go back and overwrite a line, or insert between them with a number between them? Something about that really made you think about what you were doing, and I'm sorry for people learning to code with text editors that they miss that.

Suffering is character building :eng99:

tef
May 30, 2004

-> some l-system crap ->

SlightlyMadman posted:

Internet Janitor's emulator has me thinking that it would be interesting to write something similar, but that also has a full and verbose API. Hell, you could probably write it in flash or javascript and put it on a website along with the tutorials. Just disable paste so you make those little shits type it in because that's the only way you'll learn.

Rote learning is possibly the worst way to get people to think about what they are doing, and your 'learn to program by copy and paste by hand' lures them into spending their time fighting the environment to get it to work.

I really don't think your combination of rose tinted nostalgia and thinly veiled hatred for learners makes for a constructive course on learning. I learned despite these things, not because of them. Please don't confuse your misanthropy for insight into education.

You're basically advocating abuse. I hope no-one ever has to suffer under you as a teacher, and that you lose your hands in a industrial accident, so that you never inflict your ignorance upon the keyboard again.

tef fucked around with this message at 18:26 on Oct 20, 2012

tef
May 30, 2004

-> some l-system crap ->
You see, kids today learn to cycle easy. They have training wheels, safety helmets. In my day they learned to cycle on penny-farthings, and that's the best way to learn to cycle. I haven't moved on since 1890, so why should I let them take advantage of progress - I certainly haven't.

People should learn from my mistakes by repeating them exactly, because my mistakes have been refined and polished over the years.

Who wants to learn javascript? Making simple things that they can share easily and show to others? They should be learning to program in my home-brew hello world environment. What do you mean you want to do something fun? I never got to do that. I spent the first five years writing guessing games.


I hope you drown in your own bile.

tef fucked around with this message at 18:41 on Oct 20, 2012

Mongolian Queef
May 6, 2004

tef posted:

You see, kids today learn to cycle easy. They have training wheels, safety helmets. In my day they learned to cycle on penny-farthings, and that's the best way to learn to cycle. I haven't moved on since 1890, so why should I let them take advantage of progress - I certainly haven't.

People should learn from my mistakes by repeating them exactly, because my mistakes have been refined and polished over the years.

Who wants to learn javascript? Making simple things that they can share easily and show to others? They should be learning to program in my home-brew hello world environment. What do you mean you want to do something fun? I never got to do that. I spent the first five years writing guessing games.


I hope you drown in your own bile.

Are you okay, man? You sound kinda angry.

tef
May 30, 2004

-> some l-system crap ->

tunah posted:

Are you okay, man? You sound kinda angry.

Someone is advocating that the only way to teach people programming is to treat them as an unthinking dysfunctional photocopier, because they hate other people. In the hope that manually grinding through copy and paste will prevent them from copy and pasting in future. It's beyond ignorant, it's malicious.

If you're not angry, it's because you're a sociopath, a misanthrope, or a sperglord happily functioning without empathy.

tef fucked around with this message at 18:51 on Oct 20, 2012

Mongolian Queef
May 6, 2004

tef posted:

Someone is advocating that the only way to teach people programming is to treat them as an unthinking dysfunctional photocopier, because they hate other people. In the hope that manually grinding through copy and paste will prevent them from copy and pasting in future. It's beyond ignorant, it's malicious.

If you're not angry, it's because you're a sociopath, a misanthrope, or a sperglord happily functioning without empathy.

I'm not angry. You're the one writing essays about how someone learned programming by copying Basic from a magazine, but I'm a sperglord. You're totally right.

tef
May 30, 2004

-> some l-system crap ->
If you want to pick a fight about teaching, I'll respond in one of the other threads. I'll leave this one or pictures of neat things.

Mongolian Queef
May 6, 2004

tef posted:

If you want to pick a fight about teaching, I'll respond in one of the other threads. I'll leave this one or pictures of neat things.

I'm sorry, I don't want to pick a fight. I'm having a bad day and this thread is for pictures.

Shalinor
Jun 10, 2002

Can I buy you a rootbeer?
Jesus Christ tef, he was just making a tongue in cheek joke about the good ol' days of learning to code. Cool off. Tunah, you're fine.

Volte
Oct 4, 2004

woosh woosh

SlightlyMadman posted:

Just disable paste so you make those little shits type it in because that's the only way you'll learn.
If this isn't a joke then I agree with tef completely.

Max Facetime
Apr 18, 2009

Volte posted:

If this isn't a joke then I agree with tef completely.

Yes it is a joke, holy poo poo.

Here's a step by step on how I'm making a signed distance field bitmap font:

A single character from a TrueType font:


After running 8SSEDT algorithm:


Scaled down:

And all together:

Mongolian Queef
May 6, 2004

Win8 Hetro Experie posted:

Yes it is a joke, holy poo poo.

Here's a step by step on how I'm making a signed distance field bitmap font:

A single character from a TrueType font:


After running 8SSEDT algorithm:


Scaled down:

And all together:


Got any shots of these "in action"? I think I've only seen them in TF2.

Max Facetime
Apr 18, 2009

tunah posted:

Got any shots of these "in action"? I think I've only seen them in TF2.

Not yet, but generating the mesh to put some text on the screen is next on the to-do list. I've already got some ideas for effects that I want to try out.

Coffee Jones
Jul 4, 2004

16 bit? Back when we was kids we only got a single bit on Christmas, as a treat
And we had to share it!

Thermopyle posted:

Typing code out of magazines was fun!

It was the longest time before I learned that a READ command followed by a long list of two to three digit numbers separated by commas was bare opcodes and data, no assembled code. Good luck figuring out what went wrong if you make a typo! :iamafag:

e:
Apple //c - 1989, just a line editor. Back then your programming environment was also your command prompt.
The first time I ever saw 'C' I wondered where the line numbers were.

Coffee Jones fucked around with this message at 19:50 on Oct 21, 2012

Shalinor
Jun 10, 2002

Can I buy you a rootbeer?
I suppose it's not screenshot Saturday anymore, but:





... that's how Jones On Fire looks right now. Pink placeholder firehouse aside, that's pretty much final art. I have vague hopes of it hitting the App Store before November, but we shall see.

EDIT: also, those signed distance field shots are awesome. I wish I has some excuse to implement that - seems like a really neat algorithm.

EDIT: Vv thanks!

Shalinor fucked around with this message at 00:13 on Oct 22, 2012

Thermopyle
Jul 1, 2003

...the stupid are cocksure while the intelligent are full of doubt. —Bertrand Russell

Shalinor posted:

I suppose it's not screenshot Saturday anymore, but:





... that's how Jones On Fire looks right now. Pink placeholder firehouse aside, that's pretty much final art. I have vague hopes of it hitting the App Store before November, but we shall see.

Well that's pretty freakin' awesome!

SlightlyMadman
Jan 14, 2005

Sorry I should have put a smiley in there or something, but just for the record I don't actually think kids are "little shits" and should be abused. I do think it's a shame that fewer young people are interested in programming these days though.

Screenshot for relevant content:


I'm starting to work on the combat routines, so I made a smaller ship to fight. It's a two-man fighter with no shield capabilities or cargo area but decent weapon systems. It's size and twin engines will allow it to make quick strikes with high evasion against return fire, and escape easily if things go wrong.

Scaevolus
Apr 16, 2007

Internet Janitor posted:

Built a TinyBASIC interpreter/REPL for a class I'm teaching to middle-schoolers.







That first screenshot is a Java executable if you give it a .jar extension. Source (Forth).

I like how your complete REPL/JIT is 800 lines.

Did you consider operator-precedence parsing? It might be more concise than the recursive descent parser

Internet Janitor
May 17, 2008

"That isn't the appropriate trash receptacle."
Scaevolus: Thanks! I went with recursive descent mainly because it's easy to keep hacking new features on, but I ought to look into operator-precendence parsing. Best way to find out whether it simplifies things is to give it a shot.

The first week of putting the tool in the hands of kids went very well. Everybody had a lot of fun and while I did uncover a handful of bugs, there were no showstoppers. I spent a good chunk of today patching bugs and addressing feature requests, like an EDIT command to make it easier to modify previously entered lines of the program and additional intrinsic functions.

I've taught classes to this age group with Java and Processing in the past, and I'm pleasantly surprised by how well my students took to BASIC. Line numbers and GOTOs can be hell in large programs, but they seem to make the flow of programs very intuitive. I'm sure my students will outgrow this environment in a few weeks and be ready for a "real" language, but but the tool has definitely served the purpose of introducing core programming concepts and being unintimidating.

tef
May 30, 2004

-> some l-system crap ->

Internet Janitor posted:

Scaevolus: Thanks! I went with recursive descent mainly because it's easy to keep hacking new features on, but I ought to look into operator-precendence parsing. Best way to find out whether it simplifies things is to give it a shot.

Precedence climbing is quite straight forward, http://www.engr.mun.ca/~theo/Misc/exp_parsing.htm#climbing

quote:

The first week of putting the tool in the hands of kids went very well. Everybody had a lot of fun and while I did uncover a handful of bugs, there were no showstoppers. I spent a good chunk of today patching bugs and addressing feature requests, like an EDIT command to make it easier to modify previously entered lines of the program and additional intrinsic functions.

From my early days with BBC BASIC, I recall 'RENUMBER', and 'AUTO' being rather useful. RENUMBER is kinda obvious, AUTO was a command that means number the following input as I type it in.

quote:

I've taught classes to this age group with Java and Processing in the past, and I'm pleasantly surprised by how well my students took to BASIC. Line numbers and GOTOs can be hell in large programs, but they seem to make the flow of programs very intuitive.

You could always approach this by adding new structured programming concepts (while, for) to your interpreter, and explaining them in terms of GOTO. Admittedly, the BASIC I used also had GOSUB/RETURN as well as functions.

(I'm also rather nostalgic towards turtle graphics too)

quote:

I'm sure my students will outgrow this environment in a few weeks and be ready for a "real" language, but but the tool has definitely served the purpose of introducing core programming concepts and being unintimidating.

I'm really curious to know if you let them peek behind the scenes, and plan to let them start playing with forth too. It sounds like you and your students are having fun, and it's rather interesting to hear about. Keep posting :3:

Thermopyle
Jul 1, 2003

...the stupid are cocksure while the intelligent are full of doubt. —Bertrand Russell

tef posted:

I'm really curious to know if you let them peek behind the scenes, and plan to let them start playing with forth too. It sounds like you and your students are having fun, and it's rather interesting to hear about. Keep posting :3:

Seconding this. I've been putting some thought into teaching my 3-year-old daughter programming in the coming years...

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
I highly recommend everybody mentor a computer-oriented summer camp for a year or two. It's a really low-stress environment for the most part, it's a lot of fun, and it's a great learning experience for everybody. The camps are usually understaffed, so it's not too hard to get on the team.

Shalinor
Jun 10, 2002

Can I buy you a rootbeer?

Suspicious Dish posted:

I highly recommend everybody mentor a computer-oriented summer camp for a year or two. It's a really low-stress environment for the most part, it's a lot of fun, and it's a great learning experience for everybody. The camps are usually understaffed, so it's not too hard to get on the team.
What's the time commitment on that like? Wouldn't it be, effectively, a full-time job for a few months?

I have only vague memories of the computer summer camp I did as a kid. (We did awesome things with HyperCard and such)

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

Shalinor posted:

What's the time commitment on that like? Wouldn't it be, effectively, a full-time job for a few months?

Depends on the summer camp, and it also depends on how well you are around or love kids.

One year, I taught at a camp run by a place called "CyberCamps", which looks like it's now out of business. It provided a lot of content for kids to run through, built on top of an intranet, along with management systems for the counselors. All the kids were in their own little work, being introverts on the computer, except when they needed from a counselor (which was often, mind you). The counselors were encouraged to play around with technology in the background rather than just sit around idle, which would hopefully inspire the kids to do more or learn something extra. I installed Linux on a few of the extra computers, which some of the kids were fascinated by (installing applications for free, from a weird command line thingy, blew their minds), and played around with 3D modelling a bit.

Another, I taught at a completely different environment run by "iD Tech Camps", which had a set of goals for the students, and said "go". They provided some sample lesson plans and all the technology as before, but encouraged us to adapt them to the group of kids, and what they were interested in. The camp also required a group project at the end of the course. So it required a bit more effort to manage something like that, but I really enjoyed the collaborative environment that eventually came out of it, with the kids not seeing me as that guy they bug if they have issues, but their coworkers and peers along with it. We built a really simple Flash game by the end of it, with some people doing programming, some people doing animation and art, etc. Everyone was really proud of that.

I can't really answer "time commitment" exactly. It felt like a mix of playing around in a learning environment, and work. Hopefully this helped answer, at least a bit.

feedmegin
Jul 30, 2008

Maluco Marinero posted:

Aha, yep yep. First exposure to programming right there when I was 6.

I remember that book too.

6 year old me was very disappointed in the lack of 2012-quality 3d rendering in the fighter planes :colbert:

mkasu
Oct 20, 2012
Currently working on my bachelor thesis, involving the research for new acceleration structures for ray tracing.

Here's a picture of the Sponza scene which I currently use to test if the Build and Traversal for my structures are working.

fcbarros
Mar 28, 2011

mkasu posted:

Currently working on my bachelor thesis, involving the research for new acceleration structures for ray tracing.

Here's a picture of the Sponza scene which I currently use to test if the Build and Traversal for my structures are working.



Nice, so far how is your result? How is your progress so far? Got any speed improve?

mkasu
Oct 20, 2012

fcbarros posted:

Nice, so far how is your result? How is your progress so far? Got any speed improve?

In the picture, I was using a simpler acceleration structure (uniform grid). I'm currently implementing a lot of them to get used to the topic and ray tracing framework.

Currently I am a little bit struggling with implementing my own approach. On paper it's done, though. My first goal is the data structure to be more memory-efficient than other fast approaches without losing too much speed. I'll get back to you in a while when I'm done with the implementation ;).

steckles
Jan 14, 2006

mkasu posted:

My first goal is the data structure to be more memory-efficient than other fast approaches without losing too much speed. I'll get back to you in a while when I'm done with the implementation ;).
This is a definitely a fertile area of research. I assume you've seen Implicit Object Space Partitioning: The No-Memory BVH? Their memless results aren't too exciting, but the two level stuff seems pretty nice.

Progressive CPU based ray tracers are probably going to keep using big, slow to build structures like SAH kD trees, because faster ray queries usually outweigh build time in the long run, but real time GPU stuff definitely needs something faster and lower memory.

steckles fucked around with this message at 21:44 on Oct 23, 2012

mkasu
Oct 20, 2012
Thanks for your link, and yes I already have heard from it. My plans are based on their work. It's definitely a very interesting area of research.

My bachelor thesis might not cover the GPU part (as I have no experience in this field, yet), but it's the spirit to bring it to CUDA afterwards. I'm going to post some results here, when I am done with it (don't expect it before March or something, as I am just starting working on the thesis itself next month).

Combat Pretzel
Jun 23, 2004

No, seriously... what kurds?!
After having had more fun on my initial synthesizer app, that I wrote for Windows 8, I've been giving a fully modular one a try. Initial WIP:



It works somewhat. Without actual dials (yet), there's only so much you can do. But it taught me one thing, after a goddamn long debugging session, and that is to test any "fast" methods for various expensive math for their accuracy before actually using them nilly-willy.

Adbot
ADBOT LOVES YOU

octan3
Jul 10, 2004
DoNt dO DrUgs
Not as exciting looking as some of the work people are currently showing (it has been great motivation to get me back into OpenGL work again though!) but I've been working on putting together a tour of the features provided by the website I help develop.



I'm happy with how easy it turned out to be after finding the Guiders.js library and wrapping it up to provide keyboard navigation etc.


Combat Pretzel - As a side note from someone who has just started getting into windows 8 development it has been great reading about what you have been facing when it comes to getting the apps through Microsoft certification and so on

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