🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

My project takes too long to program

Started by
91 comments, last by JoeJ 3 years, 2 months ago

JoeJ said:
We have cars which do CV in real time.

Very far from perfect. And even worse if only cameras are used. Using radars is a basic task novices program in the first month of many programming schools. Camera-only is tremendously hard to do.

JoeJ said:
Anyways, i see you do not consider to give up, and i got the thread wrong.

I am ranting in the Lounge. When i have some question about ML i would ask in the proper subforum and not talk there about my personal dramas. Would keep it technical. You always rush to offer help to people. And i was just talking. You interrogated me about NNs too, so i had to talk about them too. No problem, i am just talking anyways and it is on topic.

Giving up on developing apps? I consider this option every day. But i am not giving up yet.

Advertisement

It could be 5 years or 20. My motivational crisis is the same.

Perceptron is 60 years old. This is not a fast evolution. I love NNs, but big part of the success in the field was thanks to big data that people using the internet provide. And the improvement in GPUs helped.

I am not so optimistic about the evolution of the hardware for ML.

I am more optimistic about researchers making advances in ML.

And i am very convinced training instead of coding is the future. Sooner or later, training will deprecate coding. I believe. There still will be very few persons still coding. So few that Visual Studio will not exist anymore. I think it will happen before the end of this century.

NikiTo said:
You always rush to offer help to people. And i was just talking. You interrogated me about NNs too, so i had to talk about them too.

Sure. Like back then, when you accused me of being responsible that you ‘wasted a year of work’ on raytracing. Where that actual work was only painting flow diagrams in Paint but never ever implementing a damn ray-plane intersection in code.

You are always quick accusing others. Musk being an evil CEO only capable of marketing and making promises. Just talking, achieving nothing.

Like you do, when you - as a self appointed expert - teach us about ML. Things that we all know ourselves from reading some articles.
Let me tell you: When i did that NN tutorial decades ago, i perfectly understood what's going on in that ‘black box’. The problems you mention only come up after things become much more complex. So don't worry about that yet.

I give you a tip: Your observations and predictions on evolution of AI only proof your incompetence on the topic. That's easily observable by anyone, and admitting you are no expert does not fix this impression. You do not do yourself a favor.
So stop talking and get to work on a basic NN tutorial. Then, maybe, somebody will pay attention.

I admit you are right - i rush to offer help to people even if i know they can't be helped. My mistake.

@JoeJ Can't recall accusing nobody for none of my failures. Did i say it in the form of a joke or sarcasm? You can show me the quote in private.

I accused CEOs for using void marketing to destroy real technology.

And i wrote a lot of code for "global illumination trough pure rasterization" that went nowhere. Lot of planning in Krita but lot of code too. That project you talk about failed, but i learned DirectX thanks to it. It was an internal fight of mine - programing what i enjoy - 3D rendering, or what i must code - “cure for cancer”.

NikiTo said:
Lot of planning in Krita but lot of code too.

Sorry, i remember now there was code, but you did never compile and run it, if that's right.

However, that's splitting hairs. To me it seems you either get lost in low level optimization or in high level planning. Both based on assumptions what might eventually work. Both having no benefit in the research phase, so why do you spend all your time on that? I mean, no wonder ‘it takes too long’ then?

You said you think your current project will work if you can finish it. That's an assumption, meaning you are not sure, and you are still in what i call ‘research phase’. So there is no need for optimization and compute shaders yet, and still you spend years on it. Before knowing it works at all.

Then lets look at the RT project in Krita (or call it GI if you wish): You had very vague ideas, without understanding how light is diffused and reflected in the real world. And you did not try to learn it. No path tracer, no radiosity solver, no math at all. Only your imagination of light reflecting somehow from surfaces. You invented a concept similar to K-dops to accelerate ray tracing, without realizing or caring this has been explored long before. (And you kept it secret - otherwise i would had just told you so). You also ignored the concept of acceleration structures completely, together with any known previous work on GI or raytracing. You thought you would be just smarter than all those guys working for ‘marketing CEOs’ like Jensen.
Then suddenly the enlightenment: It wont work. You gave up and went back to top secret CV.

After some time, ‘work’ on ML using NNs, like the others do. You designed a mighty and flexible API in C#. An API over NNs, although you did not understand how they work.

That's ridiculous, NikiTo. All of that. I can't judge the CV project because it's top secret, but i have no reason to think your ‘programming work’ is better here than with the other things.
This is not how programming works. Learn it, or leave it. We talk about the waste of a lifetime here. Your Comics were pretty good, btw.

Ok then. This was my last trial to force my help on you. I don't mean it bad, and good luck!

Neural networks are simply function approximation tools. They don't deserve a whole new paradigm.

JoeJ said:
Sorry, i remember now there was code, but you did never compile and run it, if that's right.

That's right.

JoeJ said:
However, that's splitting hairs. To me it seems you either get lost in low level optimization or in high level planning. Both based on assumptions what might eventually work. Both having no benefit in the research phase, so why do you spend all your time on that? I mean, no wonder ‘it takes too long’ then?

Everybody fails in his own way. How much you wander between LOD for RT, Fluids Sim and 3D editing IDEs? All of them already provided by the competition. How many years?

JoeJ said:
Then lets look at the RT project in Krita (or call it GI if you wish):

Even though i never coded a ray-triangle intersection function, it is virtually RT(a link follows), and yes it is GL. Then why? I have it in internet. When i was done with the rasterization GI engine, i would have copied the lighting formulas anyways. I would have copy pasted them and they work. It works.

JoeJ said:
(And you kept it secret - otherwise i would had just told you so).

Secrecy made me fail here. Still i will keep with secrecy.

JoeJ said:
Then lets look at the RT project in Krita (or call it GI if you wish): You had very vague ideas, without understanding how light is diffused and reflected in the real world. And you did not try to learn it. No path tracer, no radiosity solver, no math at all. Only your imagination of light reflecting somehow from surfaces. You invented a concept similar to K-dops to accelerate ray tracing, without realizing or caring this has been explored long before. (And you kept it secret - otherwise i would had just told you so). You also ignored the concept of acceleration structures completely, together with any known previous work on GI or raytracing. You thought you would be just smarter than all those guys working for ‘marketing CEOs’ like Jensen. Then suddenly the enlightenment: It wont work.

"It simply works!" - https://developer.nvidia.com/gpugems/gpugems2/part-v-image-oriented-computing/chapter-38-high-quality-global-illumination

My previous practical experience in hair lashes transparency gave me the background to know for sure it will work. I just have to go deeper with depth maps peeling -


It did not come out of thin air. It was based on practical previous experience. I got a bug in depth maps peeling for my hair lashes shadows project. The bug projected the texture of the closer triangle to the triangle behind. Then i was like “hey this could be used for color transmission”. I think this explains to you why and how i was able to say “i know my GI will work”. I have seen color transmission working… as a bug for hair shading. Rest is copying pasting the lighting formulas…. as you do - you copy paste them. Do you work on lighting algorithms? Do you investigate about formulas for ray triangle intersection, or you read them on the internet? Are you a mathematician? Instead of GPUs going for more brute force, they decided to go for classical RT, and this is what killed my rasterization GI project the most.

Didn't DXR kill your RT work?
Year 2026 - “NVidia is proud to announce FluidWorks - hardware based fluid sim accelerator”…. JoeJ with his super mega fast fluid simulation is sad now. Deprecated… I reveal no secrets of yours. You always talk about LODs in RT in the public forums and one of the last screenshots you published show fluid sim inside an editor. Notice i am not revealing your secrets. Only what you already shared publicly. You know i am not sharing it all about your work. I am careful with this. You already filtered my NN API. No problem. I dropped that API. Better to use TensorFlow. This is why it is always a good thing to keep important secrets only for me myself.

It could again happen to me that “somebody already did it”. This is my own risk.

You accuse me of failing doing something already invented(rast GI). But you yourself are working for something that at least two companies already offer. If i google better, i think i would find ten companies that already offer what you are doing now.

JoeJ said:
An API over NNs, although you did not understand how they work.

I will give you a piece of chalk and a chalkboard. The rest of the class will be watching you. The diffusion lighting formula is the theorem. You have to prove it mathematically. You have 45 minutes to do it.

For the API i have seen what i need to start codding - synapses, neurons, layers, networks…. enough to start codding the API in OOP. Like the lot of programmers who program apps to be used by people in finances without the programmers having a degree in finances.

JoeJ said:
Ok then. This was my last trial to force my help on you. I don't mean it bad, and good luck!

You help people in a brutal way. I am used to it. But a person who talksinto you for the first time could feel oppressed.

And finally -

JoeJ said:
You thought you would be just smarter than all those guys working for ‘marketing CEOs’ like Jensen.

They are humans too. I am not a genius, but i am not stupid either. If i study it for a period of time i will become as good as them. Then it matters if you work in the area. If you work in a similar area, it is probable that ideas will come to you even if you have not the IQ of Dr. Robotnik. These people at NV are people like me and you. They are specialized in their field. When they feel sick they go to a doctor specialized in another field. We all work on something. With the exceptions of few unreachable geniuses, most of the people who investigate in the field are people who pay for the discovery with their hard work. The same way as working on hair shading made me discover rasterization GI.

An example adjusted for you -
group one - people who are completely incompatible with no kind of music, try to learn to play the guitar.
group two - regular people work hard to learn to play the guitar.
group three - absolute geniuses born with ultra-talent, destined to become guitar goods with not much practice.

You should not think that every single one who works for NV or MS is a deep genius. Most of them are intelligent enough. The rest is hard work. People like me and you. Occasionally in the offices of microsoft unreachable math geniuses are to be seen walking. They attract all the pocket calculators around them like human magnets. Then, they hide in their MS caves again, and regular people like me and you can keep working hard.

You should not worship just anybody who plays guitar in a band.

My personal attempt to help you - quit anything you do. Houdini software running on a NV RTX GPU destroys anything you do. Your project already failed. You show cool screenshots, but you can not sell it better than Houdini. You can do it as good as Houdini in some separated areas, or even better than them, but as a whole you will never ever create such a rich and powerful editor as them. Finish what you do, pack it in a project, upload it to github, publish a paper showing how you made fluids so fast while it still has a value, before tomorrow somebody uses new hardware features to make a sim 10 times faster, and then you quit what you do. You build something, move on.

In the moment you decide to throw it everything away and start to train a NN yourself, i will already have my experience and thousands of hours of work in the field behind me. You would have to ask me then like - “Can you explain me this, Senpai?” (this is humor, not offense)

taby said:

Neural networks are simply function approximation tools. They don't deserve a whole new paradigm.

Not that simple. NNs can cancel features of less importance and highlight features of major importance. The activation functions inside the neurons will cancel any idea that is not worth and would propagate any worthy idea to the next layer.
It is not such a simple thing if it can compute just any algorithm you can probably think of… can compute in theory.

If you google it, you can find a lot of people who are considering ML could deprecate programmers in the future.

In the beginning i thought ML/NN are simple too. Then i skipped over them. I would write exactly the same comment as you, before i got a bit deeper. My comments that are just like yours are here on the forum. Before going a little bit deeper.

Think of a program working on a computer - it does complicated stuff. But it is only using a basic instruction set. Think how basic the instruction set of computers in the 80s was. They already computed for NASA.

It takes time to rethink everything you learned so far as a traditional programmer. And realize how a lot of simple stuff put to work together is doing great things as a whole.

Very interesting field.

While i would not suggest you to throw programming away(because i don't know what you are programing), i do recommend you to give ML/NNs a second chance. Just consider revisiting NNs.

Not to mention that every time a programmer opens a programming IDE, what actually happens is that a neural network types code. Brain is conceptually and in size 1mln times more sophisticated than artificial NNs, but they are far far cousins. And look what it already does - it opened an internet explorer and wrote a comment here.

We are not still at the AI-making-beep-beep-music level.

This is what a modern NN can do(time in the link where the NN started generating music)
https://youtu.be/_6OUGRsslJY?t=2151

Pay attention to the melody and the fluid emotions and sentiments.
It is bot “a simple thing” and bot “magic” at the same time. Theoretically, some day a bunch of “simple things” like that will absolutely replace you. Then every replaced atheist will suddenly preach about the importance of the human soul and every replaced evolutionist will start defending creationism.

Note to anyone else still being here: Skip this post completely ; )

NikiTo said:
How much you wander between LOD for RT, Fluids Sim and 3D editing IDEs? All of them already provided by the competition. How many years?

‘LOD for RT’: Surfel hierarchy idea adopted from papers? Few days to implement.

‘Fluid Sim’: Ported from papers + github: Maybe 2 weeks because given code was incomplete. Adding MT: A week or two. Adding my own ideas: 2 months. May still extend it.

Editor: WIP, started 1-2 years ago. Feels pretty complete on the geometry side currently.

I don't see research work as ‘Competition’. It's free knowledge, but to learning how it works takes more effort than watching YT videos.

You probably meant ‘Quadrangualtion’, which is about geometry and took me 2, maybe 3 years. About half of that time went into things that finally worked, but did not made it into the editor. That time is lost. I did also try a whole lot of different GI approaches and picked only one in the end ofc. What i finally have is still superior to competition in both quality and performance IMO. It started as a hobby and was a journey of a decade (during that time also worked on mobile games, 3D engine, walking ragdolls).
Important: Optimization (including port to GPU) only happened after the solution was complete. Although GI only is a performance problem because all math (diffuse material assumed) is simple and public knowledge.

My research work was a path of failures too. This is how research works. But i never designed high level concepts or did premature optimizations over assumptions. That's what i think you do wrong.

NikiTo said:
I will give you a piece of chalk and a chalkboard. The rest of the class will be watching you. The diffusion lighting formula is the theorem. You have to prove it mathematically. You have 45 minutes to do it.

I did just that with you, but you did not pay attention. Instead you doubted my path traced reference results to be ‘ground truth’, and started argue and discussion over that term. Remember?

But i see now your work was based on rasterized multi view depth layers. You even kept that NV paper a secret, although it is not your invention. Even when i showed you the exact same approach implemented by another guy, you kept this source a secret.

If you didn't, our discussion back then would have been much more fruitful, and maybe i would not think now you are just a pretender, unable to differentiate wishful thinking from development. You keep your knowledge secret, but make your assumptions public. Thus the public impression about you becomes an assumption of little knowledge.

You help people in a brutal way. I am used to it. But a person who talksinto you for the first time could feel oppressed.

This applies to you because we know each other over years of PMs. But not to others, with rare exceptions.
What i constantly do wrong here in the forum is assuming unknown people would be newbies. After it turns out they are not, that's embarrassing for both of us.

Thanks for your predictions about my work, but once more: I neither compete RTX nor Houdini just because i work on some similar things. My worries HW RT could make my GI obsolote are also gone for a long time now. I'm also not the one who brings his problems to public discussion, and i don't want to.

JoeJ said:
I did just that with you, but you did not pay attention. Instead you doubted my path traced reference results to be ‘ground truth’, and started argue and discussion over that term. Remember?

Can't recall. We argued constantly about everything.

JoeJ said:
But i see now your work was based on rasterized multi view depth layers. You even kept that NV paper a secret, although it is not your invention. Even when i showed you the exact same approach implemented by another guy, you kept this source a secret.

This accusation is offensive. Who told you i hidden it? I googled for it today to find the example you showed me. But found this one. Your accusation is wrong and offensive. You could have asked first. Or not formulating it as an accusation based on assumed things. If i had know i am reinventing the wheel i would not do it. Bringing something different to this world is an important part of my morals. Even if the original part of my research is small in the end. I always try to bring something original. Don't take that away from me. Take your accusation back!

I accepted your criticism about too much of optimizations on code. If you want to keep destroying me, never forget about your own years spent without publishing a product. And please don't invent false accusations. I saw this link today for first time. You could have asked me first. I would have told you. I was searching for the example you showed me, but found NV stuff. Your reaction shows me you see this article for first time too. Take it back!

I even told you how exactly i ended up discovering this for myself and you still accused me by inventing a conspiracy. First time i pointed to your personal failures and you jumped to the roof.

Lot of people fail, in all kind of ways.

I decided, that when i finish the shader, i will save it well in some folder, and i will start AI.

It is decided.

It would be pleasant for me to fly with my ML-spaceship over your traditional-programming-cave and wave to you. I want to see your expression of a deprecated coder. And when i have an agent that moves without code/engine inside, i will post it in the lounge. It will be a video of an agent moving. I will show it on the forum for you to see it. And I will post it here in the Lounge again, not in the AI sub-forum, because my threads always get polemical.

It is decided.

This topic is closed to new replies.

Advertisement