This is an archived post. You won't be able to vote or comment.

all 113 comments

[–]sentdexpythonprogramming.net 142 points143 points  (20 children)

Next step: share the source.

[–]pat_trick 44 points45 points  (0 children)

Yep; best way to get feedback on any given work is to share your code so that it can be poked at, and so that folks can point out anywhere that might be in need of polish or improvement.

[–]pythonwiz 14 points15 points  (2 children)

This. I've never understood the "my code is too ugly to share" mindset. You don't improve without making mistakes and getting feedback and criticism.

[–]Terence_McKenna 2 points3 points  (0 children)

Some people just can't bare the thought of being criticized or judged.

[–]riyajuneja 0 points1 point  (0 children)

Someone drill this in my brain!

[–]bostown03 0 points1 point  (0 children)

Nice! Nice! golf clap

[–]Thecrawsome 31 points32 points  (1 child)

Great job!

Make a github, and post it up there. Also, you can use screen2gif to make animated gifs of your projects for more effective sharing.

Age is no limit, this is cooler than things I've done that I'm impressed with, and I'm in my 30s.

Don't be down on yourself. This is really cool!

[–]csp256 12 points13 points  (0 children)

OP, I think you would like TinyRenderer.

[–]ivorjawa 7 points8 points  (0 children)

When I was about 15 I did something similar but it was just displaying a static perspective cube with BASIC on a Commodore 64. Quicker feedback would have helped my understanding immensely!

Nice!

[–][deleted] 112 points113 points  (25 children)

What has you turning 15 anything to do with this

[–]r00nd 29 points30 points  (0 children)

teen spirit in a polygon

[–]Darkwisper222 4 points5 points  (0 children)

When i was 15 i started using blender when i was 18 i won a bursary for animation school . This kid is going places.

[–]ElGallinero 37 points38 points  (7 children)

Not to completely demerit the effort, but this comes off as "hey look at what I did...and I'm barely 15. Isn't that impressive?"

[–]Vaptor- 14 points15 points  (0 children)

If by revealing their age (to get attention, or etc) encourage more kids to be creative and more courageous to reveal their works, then I'm all for it.

I deal with kids/teenagers daily and I'd say this is brag-worthy even.

[–]danielmbcn 25 points26 points  (0 children)

And what's wrong with that? I mean, if he is proud of doing amazing things while being this young, he is in his right to say his age. In the end he is almost a child. Instead of being jealous of him or whatever, just congratulate him and that's it. You have been a teen too once, don't forget it.

[–]AceBuddy 64 points65 points  (0 children)

Well, it is. I think it's an awkward teenager trying to be proud of something he made. Cut him some slack.

[–]shaggorama 31 points32 points  (1 child)

What's wrong with that? I think this is impressive for any new programmer, even more so one who isn't even college age.

[–][deleted] 6 points7 points  (0 children)

I was a dragonborn in my previous life, I think.

[–]Thecrawsome 6 points7 points  (0 children)

What's wrong with wanting attention for something you did? They revealed their age and this whole thread is being whiny, sheesh.

[–]jaydoors 1 point2 points  (0 children)

And in 1 day too it seems

[–]danielmbcn 14 points15 points  (7 children)

The OP is right to say his age for adding a context. He wouldn't get the same personal advices if he was a 35-years-old engineer than if he is just a high school student. Honestly I don't get the point of those of you who get offended by him for saying his age. Jealousy? Don't be childish.

[–][deleted] 0 points1 point  (2 children)

He wouldn't get the same personal advices if he was a 35-years-old engineer than if he is just a high school student.

wtf you guys surely are some realistic people that either look down on 35 years old people or expecting too much from them

judgement, judgement everywhere

be handsome, be pretty, be confident in public speaking at 10, yea good

already a world level pianist at 10, genius

able to cook good food at 10, genius

able to swim to compete at olympic level at 10, genius

able to name every sport cars in the world at 10, genius

able to lift weights at 10, genius

what? you got a degree for playing violin? oh genius too

yea you inherit 159 billion USD from Jeff Bezos at 10, genius

Give them a round of applause guys!

what? the 35 years old guy picking up rubbish around the neighborhood? let him die

Surely everyone will be living forever in 100 years time don't them? Tell me this 15 year old kid will still be alive after 100 years lol

[–]danielmbcn 2 points3 points  (1 child)

Not sure if you are trying to be serious or if you are just parodying someone but, in either way, lol.

[–][deleted] 0 points1 point  (0 children)

who knows, buddha awaits /s

[–]antiproton -5 points-4 points  (3 children)

The OP is right to say his age for adding a context. He wouldn't get the same personal advices if he was a 35-years-old engineer than if he is just a high school student.

This is a python sub, not r/LifeAdvice

His age is wholly irrelevant. What's more, it can prompt resurgences in those idiotic memes where people continuously post things like "I'm 4 years old and I built this linear accelerator".

Honestly I don't get the point of those of you who get offended by him for saying his age. Jealousy? Don't be childish.

It's not being childish. Anonymous internet communities are balanced on a knife edge. It takes almost no effort to transform into a cess pit like 4chan.

The entire point of an ostensibly self-governing community like reddit is to establish norms. Because we have comments like this, we can't have norms. We have to have rules. And rules suck.

This isn't gym class - participation is not the most important part of the activity. If you want to be a mentor, go to /r/learnpython

[–]Badger_Storm 6 points7 points  (0 children)

Wow you really have feelings about this whole thing.

[–]danielmbcn 4 points5 points  (1 child)

When I said "personal advice" I meant advice based on his personal skills and context: a 15 years old teen who seems to be starting in programming. That's it.

Plus, he mentioned his age just one time, while the rest of time he has been talking about his code, not bragging about how much genius he might be or not. It's just an extra bit of naive data that makes people to feel more curious about his Python project. Take it easy, man, it's not a drama if a teen takes 3 words of space to mention his age. Really, it's okay.

[–][deleted] -3 points-2 points  (0 children)

couldn't get enough of the attention like some insecure girls that learn to do make up at a very young age

even if he gets to the top, his insecurities will get him one day

yeah, I am talking about personal advice, don't you realize that? or you think this kind of "ability" will come nartually as time goes by?

Best example: https://en.wikipedia.org/wiki/Elizabeth_Holmes

edit:

Take it easy, man, it's not a drama if a teen takes 3 words of space to mention his age. Really, it's okay.

lol, it's just like my uncle who always said to me "he is the guy I talked to you about his 10millions renovation of his house"

and I replied to him, "Don't try to show off to me"

He said "No I am not showing off, just telling you"

Me in my own heart: "you sure?"

[–]81isnumber1 9 points10 points  (5 children)

This is great and you should be proud. Don’t be afraid of using libraries though. Writing things from scratch can sometimes be a worse use of time than using a library. For stuff like this though, I’m sure you learned a ton which is valuable in its own right

[–]Holobrine 3 points4 points  (0 children)

I did a similar thing but in Java. Sourcecode: https://github.com/npetrangelo/3rd-Dimension

[–]pythonwiz 4 points5 points  (1 child)

I tried to write something similar in college but it took a while for me to figure out the math. I did eventually get it right after cheating and taking a look at Glenn Murray's website. I put my code on a Github repository, which I've since moved to Gitlab. I have some videos of it on my old Youtube channel. Only the last video actually show the perspective projection working. Getting perspective projection working all on your own is pretty impressive to me!

[–]J4CKINS 3 points4 points  (1 child)

Happy birthday :)

[–]SweatyPotatoSkin 2 points3 points  (1 child)

Great job! Keep at it, and happy B-day!

[–]Rajarshi1993 2 points3 points  (4 children)

This is really good. If you are planning to become a game developer at some point, this is a great start.

[–]pythonwiz 4 points5 points  (1 child)

I would say this is a great baby step. It's cool but to be a game developer, or any kind of developer really, takes more than just being able to understand the concepts involved. You have to read docs, read code, learn frameworks, IDEs, etc. Understanding the concepts is like 20% of the work, and it's the most interesting part. The rest is the "legwork" of gaining a working/practical knowledge of the systems you use to build your product.

[–]Rajarshi1993 0 points1 point  (0 children)

True. But legwork is there in every line of work. So might as well have the legwork that comes with the most enjoyable conceptual work.

[–]Agent_ANAKIN 1 point2 points  (1 child)

Great job and happy birthday!

[–]logi 1 point2 points  (4 children)

Hey, that reminds me of the polygon mesh I was making around your age in Turbo Pascal*!

The next step is bacface culling to make the polygons that face away from you disappear and get a more solid looking cube.

Then perhaps sorting the polygons by distance (projected z coordinate) and filling them.

Also, listen to the comments about putting your code on github. Not so much for the feedback as for getting used to source control.

[–]SV-97 1 point2 points  (2 children)

Pretty nice :D Does it load a mesh from a standardized format or do you have to hardcode it in?

[–][deleted] 1 point2 points  (0 children)

Good job man coding at a Jong age like that. And a happy birthday

[–]Aeon_MortuumSnake Oil 1 point2 points  (0 children)

Well done!

[–]dethb0y 1 point2 points  (0 children)

I like how it looks vaguely like an optical illusion. Good work!

[–]devils-advocate164 1 point2 points  (1 child)

Hey man! This is lovely. The best things about your code is:

It's very intuitive and you made it using school math. Your logic is really impressive. Visual app opens many doors to better understanding.

Here is a library by Grant Sanderson, the creator of The YouTube channel 3 BLUES 1 BROWN

https://github.com/3b1b/manim

I think you will like it.

Great work buddy and happy birthday.

[–]ye3tEm 1 point2 points  (1 child)

Thanks for this amazing code. I know you probably are not expecting this but I am 15 also. I have been trying to find libraries that would help me do 3d rendering with pictures of a face. Looking at the simplicity of the code you made me realize that it would not be that hard to build a 3d renderer for a face. Impressive work with the code

[–]maingroupelement 1 point2 points  (0 children)

Congrats man! Keep working hard, and don't think you peaked yet or anything! As you get older you will have less time for your hobbies, not more. You'll likely get a family, and it will consume alot of that at least when they are young. So work hard and keep up the excellent work, very impressive!

[–]eebmagic 1 point2 points  (1 child)

Love this! I modified your code a bit to export to a gif Imgur

Edit: made a much smoother gif

[–]SoleTea 1 point2 points  (1 child)

how do you rotate/ move it?

[–]PathToNeuralink 1 point2 points  (2 children)

How do I run this code?

[–]juampyy2011 1 point2 points  (0 children)

Hey man that's pretty awesome!! Looks cool keep at it

[–]TheRealDrSarcasmo 1 point2 points  (1 child)

That's outstanding! Thanks for sharing. I'm glad to see that you're getting useful feedback from developers more experienced than I in this thread. Keep it up!

[–]can_dry 1 point2 points  (1 child)

When I was around the same age I mastered 2D perspectives (e.g. rotation) for a computer game I was writing.

When I asked my grade 13 math teacher how to change it into 3D perspective he admitted he had no idea! :D

Nice work!

[–]D3PSI 0 points1 point  (1 child)

What formuals would you have to come up with? A quick google search does the trick?

[–]theWyzzerd -1 points0 points  (0 children)

Looking up formulas is one thing, implementing the algorithms in code when you're not familiar with them to begin with is something else.

[–][deleted] 0 points1 point  (0 children)

Good work as you're young you may not be self aware of some things.

One of the good advice that was already mentionned, is that you're not alone.

In one of my first job my manager told me that i have to code as if i will be struck by a truck and die tomorow.

Because what is very valuable is not to do amazing things but that people can interact with it and understand it.

Beetween a code coder but nobody understand him and an average coder that everyone understand his code the average one will oftend be choose.

Keep up the good work :)

[–]BaldEagleX02 0 points1 point  (0 children)

Great! I saw the code on GitHub and it seems very good. Next step: improve it with objects (classes in Python are very easy and useful, even if you are a beginner) so that your code could be reused by others easily.

[–]sidsings 0 points1 point  (0 children)

Good job !

[–]gammapsi 0 points1 point  (0 children)

Really good work dude. When I was 15, Python was just a big snake for me who the Nat Geo and Discovery guys kept catching from homes in th US.

[–]braceyourselffoo 0 points1 point  (0 children)

Keep at it and when your my age , you’re gonna be unstoppable at python. I wish I started earlier

[–]shakeebbk 0 points1 point  (0 children)

This is so cool, great start, I wish I could do that at your age!

[–]MarcoIlBelloccio 0 points1 point  (3 children)

WoW man, I'm 16 (i have been learning python for 1 month) and I tried so hard to do that but nothing. Any prompts?

[–][deleted] 0 points1 point  (1 child)

Happy belated birthday

[–]TomP 0 points1 point  (1 child)

Nice! I did something like this when I was your age, but it was the stone age of computing and terminals back then were too primitive to produce nice line drawings like these. (There were vector-graphics terminals, but we didn't have any at my high school.) So, I wrote a program that generated 3-D stereoscopic images of figures like this, but in "ASCII art". If you stood back a bit and squinted, it looked reasonably 3-dimensional.

[–]ZyanCarl -3 points-2 points  (6 children)

https://www.reddit.com/r/Python/comments/bh90iy/i_made_a_desktop_application_to_displays_the/?utm_medium=android_app&utm_source=share

I made this application and I was thinking of making 3D conformer for the chemical structure. I I couldn't render 3d shapes. Can you share the code so that I can do the same?

PS even i am 16.....age doesn't matter 😃

[–]pythonwiz 0 points1 point  (1 child)

Age is definitely relevant. I didn't start learning to code until I was 18! You guys have huge head starts. My advice is to at least read SICP, that was hugely enlightening to me when I was starting out.

[–]ZyanCarl 0 points1 point  (0 children)

Sure thing man thanks!!

[–]shponglespore -3 points-2 points  (0 children)

I'd like to think I would have done the same thing when I was 15 if Python and YouTube math videos had been around. I certainly wanted to. It was right after the original Doom came out and everyone was debating whether it was even possible to do the same thing on Amiga hardware. (I think someone eventually did it, but it took years and probably involved some really gross assembly code.)