Messing around with linux tun/tap programs for the past few days, Made a thing that if you traceroute it, gives you haiku's (the program introduces "fake routers")
[IMG]https://blog.benjojo.co.uk/asset/UrpPjZ4GuB[/IMG]
wrote more about the building/how traceroutes work etc over on my blog [url]https://blog.benjojo.co.uk/post/traceroute-haikus[/url]
[QUOTE=JohnnyOnFlame;52656620]Am I the only one feeling like WAYWO has been getting slower and slower? :([/QUOTE]
I like to save up content for my posts to some degree this way I'm not treating the thread like my commit habits
Plus around this time of year schools start back up.
I started my classes this term and I may have bitten off more than I can chew. For the next 3 months I have 4 ACS courses and 1 math course, 2 labs, and job to contend with. Thus far squeezing in time to do anything else has been nigh impossible, which sucks because I'm so close to finishing my rough implementation of csg brushes
[QUOTE=JohnnyOnFlame;52656620]Am I the only one feeling like WAYWO has been getting slower and slower? :([/QUOTE]
I'll have some stuff to post soon, but I also have school going on as well. I have enough free time right now though that I should be able to keep progress moving forward.
[QUOTE=JohnnyOnFlame;52656620]Am I the only one feeling like WAYWO has been getting slower and slower? :([/QUOTE]
Working a ton means I don't really want to go home and program more: I enjoy programming, but work is difficult and leaves me mentally drained.
That, and I kinda use ratings as a barometer for how good/interesting my posts are and I clearly need to up my game
Yeah, work leaves me quite mentally drained. If WAYWO is getting slower and slower it just means we are growing up and focusing on our work for which we might be paid.
let's all find a non-programming job so we can keep waywo alive
[QUOTE=paindoc;52657760]That, and I kinda use ratings as a barometer for how good/interesting my posts are and I clearly need to up my game[/QUOTE]
You should just post regardless. I only lurk the thread and rarely rate anything but I always find your posts interesting.
[QUOTE=paindoc;52657760]Working a ton means I don't really want to go home and program more: I enjoy programming, but work is difficult and leaves me mentally drained.
That, and I kinda use ratings as a barometer for how good/interesting my posts are and I clearly need to up my game[/QUOTE]
I rate nearly nothing and find most everything interesting.
I've actually worked on a few things over the past months, But everytime I wanted to post something, I felt like it wasn't really ready to show.
"a few more features here and there, then I'll share" which, I know, is not really what waywo is about, but still.
And I'm just like "look I got rid of a parameter in a function"
[QUOTE=JohnnyOnFlame;52656620]Am I the only one feeling like WAYWO has been getting slower and slower? :([/QUOTE]
I've been in London working for a week, and then handling private things for this whole week.
I just want to code but reality gets in the way.
[QUOTE=Alice3173;52657866]You should just post regardless. I only lurk the thread and rarely rate anything but I always find your posts interesting.[/QUOTE]
That's nice to know, thanks. I may or may not have a bit of a problem of devaluing all I do and/or say :v
[QUOTE=JWki;52658259]And I'm just like "look I got rid of a parameter in a function"[/QUOTE]
Kind of what I've been doing too, lately. My renderer has (imo) [I]hugely[/I] improved over the past two months but I haven't really posted much about it because its all boring improvements: lately I've really been going for the single-responsibility principle for methods [I]and[/I] all my classes, making things more robust via error handling and recovery (std::filesystem makes some of this super easy yay), removing method bloat, removing duplicated code, clarifying interfaces between classes, and so on. I've not added major features in 2 months and 78 commits (almost half the commit history, lol).
I've been queued for another project, at my CEO's request (after our software team sold me as a rather competent C++ programmer, the competent bit being news to me). I'll be helping revamp an old software of ours used for modelling of orbital dynamics problems unique to some of our particular technologies (they lie at the core of the company's name, tbh). It's old objective-C code that hasn't been touched in years but our CEO is a really nice dude who's absolutely [I]brilliant[/I] and wrote most of the modelling equations himself: in some cases, he pioneered and invented the modelling techniques for the unique problems he confronted. I'm hoping to really knock that out of the park: I really enjoy numerical modelling and differential equations (just haven't approached them from a programming standpoint, yet) plus I'll most likely get the chance to show off my renderer and probably even mix in much of the work I've done on planet and celestial object rendering (!!!!!)
I wanted to keep this prototype simple and neat.
Then I had to go and implement ray-marched volumetric clouds and crepescular rays just because the technique sounded interesting.
Then it started to actually look kind of nice so I had to get it to run decently.
[img]https://puu.sh/xu4PZ.png[/img]
Going to record some videos later of how they look when you fly through them and shit but I'd like to iron out some visual kinks first.
[QUOTE=paindoc;52654905]I found a bug in MSVC, by working on a generic "TaskPool" of sorts that lets me execute arbitrary tasks on another thread. The method for adding a task to the pool is C++ template silliness, but it lets me use just about [I]any[/I] arbitrary function as input, and returns a future for the desired item to eventually output into.
[cpp]
template<class Fn, class...Args>
std::future<typename std::result_of<Fn(Args...)>::type> AddTask(Fn&& f, Args&&... args) {
std::packaged_task<typename std::result_of<Fn(Args...)>::type()> task(std::bind(f, args...));
std::future<typename std::result_of<Fn(Args...)>::type> result_future(std::move(task.get_future()));
std::lock_guard<std::mutex> queue_lock(queueMutex);
TaskQueue.push_back(std::packaged_task<void()>(std::move(task)));
cVar.notify_one();
return std::move(result_future);
}
[/cpp]
This is intended for my terrain stuff, and improving how I stream terrain while I figure out how2computeshader: when a terrain node is created, it adds the task to generate its height data to the task pool and stores the returned future. during the quadtree walk, each node checks to see if the future with height data is populated: if it is, there's another task pool for generating mesh data and transferring it to the GPU. once that's complete, the node is added to the render list. There shouldn't be any hanging while waiting for things to load, as nodes will "pop" in as soon as they're ready.
This is all theoretical, though: I can't test it, really, as my code is currently only compatible with Windows. I've tested the task pool in GCC and it works, though, so once I figure out why MSVC hates my code I should be able to test this (oddly, I can submit lambdas: just not actual functions of any kind). Pretty satisfied with how this turned out, though, as the little test cases I've run in GCC have been lovely since its so easy to add tasks to the pool and just let it run in a background thread.
[editline]edited[/editline]
extra fun part of the bug: its an error that says I'm trying to use the copy constructor of std::packaged_task (which doesn't exist), despite explicitly using std::move. This is a bug that was previously fixed once already a few years ago lol[/QUOTE]
I would report it with the send a frown thing, top right corner. Have had pretty good luck getting responses that way.
[QUOTE=JohnnyOnFlame;52656620]Am I the only one feeling like WAYWO has been getting slower and slower? :([/QUOTE]
I've never posted here a lot but university during the year and then internships each summer have really drained my time. Hoping that I can make some more time this (academic) year for side projects.
Don't feel bad about not having time man. I'm taking double credit hours this year because I have to double major. Consider my free time spent literally just eating and sleeping. And considering I eat 2/3 meals in my classes, mostly sleeping. I wish I could program more in my spare time, I just don't physically have any.
[QUOTE=JohnnyOnFlame;52656620]Am I the only one feeling like WAYWO has been getting slower and slower? :([/QUOTE]
I hope it won't die, it's great to be part of this subcommunity.
Here's a screenshot of a videoplayer I made using ffmpeg libraries:
[t]http://i.imgur.com/8aoxLiF.png[/t]
Although the way that these mirrors works is inherently dynamic, they now bake lighting onto an impostor and then transfer the lightmaps at runtime onto the created surface so entire surfaces can have reflective properties while still retaining lightmap data.
[IMG]https://my.mixtape.moe/twaavz.png[/IMG]
[img]https://my.mixtape.moe/yftevu.PNG[/img]
[img]https://my.mixtape.moe/jswpcz.PNG[/img]
I want to write
[code]if ( fdFile.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY && std::string( fdFile.cFileName ) != "background" ) {[/code]
But I wrote
[code]if ( fdFile.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY && std::string( fdFile.cFileName ) !== "background" ) {[/code]
which crashes MSVC
[sp]fucking javascript habits[/sp]
Phew, I've got a tough decision to make:
A good friend of mine recently became an official consultant for a very big open source project, and says he gets way more consulting offers than he could handle even with 2 clones of himself. So he offered to train me and then pass some consulting jobs my way.
The thing is: The project deals with very low level C coding and requires a lot of computer architecture knowledge, so it will be a very steep learning curve for me. He acknowledges that, and he said he will do it knowing that for the first 3 months he won't get any productivity gains out of me.
I am also not sure if low level computer architectures is something I can get behind, I've never done anything like that before.
On the other hand: Consulting jobs generate a metric shitton of money, which is kinda nice to have, together with a very flexible working schedule.
Should I do it? I've got the feeling that it's a once in a lifetime offer, especially since the project is gaining more and more traction and is already being used by some of the biggest companies.
It would also mean that I would stop my electrical engineering master's degree if this turns out as a viable job.
Making things look pretty
[T]https://puu.sh/xvlmb/8a7b46bbae.jpg[/T]
[QUOTE=DrDevil;52663303]Phew, I've got a tough decision to make:
A good friend of mine recently became an official consultant for a very big open source project, and says he gets way more consulting offers than he could handle even with 2 clones of himself. So he offered to train me and then pass some consulting jobs my way.
The thing is: The project deals with very low level C coding and requires a lot of computer architecture knowledge, so it will be a very steep learning curve for me. He acknowledges that, and he said he will do it knowing that for the first 3 months he won't get any productivity gains out of me.
I am also not sure if low level computer architectures is something I can get behind, I've never done anything like that before.
On the other hand: Consulting jobs generate a metric shitton of money, which is kinda nice to have, together with a very flexible working schedule.
Should I do it? I've got the feeling that it's a once in a lifetime offer, especially since the project is gaining more and more traction and is already being used by some of the biggest companies.
It would also mean that I would stop my electrical engineering master's degree if this turns out as a viable job.[/QUOTE]
Absolutely, you will learn very fast once you apply your knowledge to real situations!
Which framework for mobile game dev? I want to write something from my Linux laptop in my spare time so Unity is a no go. I haven't done any game development in years now.
Multiplatform is preferred but I'll deal with just Android if I have to.
[editline]10th September 2017[/editline]
I did think of using LOVE for Android just because I'm fond of it from the past, but I don't know how suitable that is for actual deployment.
[QUOTE=reevezy67;52663768]Which framework for mobile game dev? I want to write something from my Linux laptop in my spare time so Unity is a no go. I haven't done any game development in years now.
Multiplatform is preferred but I'll deal with just Android if I have to.
[editline]10th September 2017[/editline]
I did think of using LOVE for Android just because I'm fond of it from the past, but I don't know how suitable that is for actual deployment.[/QUOTE]
Have a look at: [url]https://godotengine.org/[/url]
I use it all the time for dev on both linux and winderps and the android target seemed pretty solid too.
Oh, and since I haven't posted anything in here for years, have something I worked on for LD 39 (didn't finish though and poked at it a bit afterwards, made in Godot naturally, here 2.1.3).
[vid]http://odin.prfn.se/u/suchmissile-2017-08-12_21.16.15.webm[/vid]
Thanks, that's a really good engine, if not a bit finicky. I have a lot of nitpicky things that bother me, mostly in the way that it's done through scripting. I'd like to write my own nodes and such and I feel really restricted using a scripting language without a ton of features.
I guess I'll just have to get used it, it is a really convenient engine.
[QUOTE=DrDevil;52663303]Phew, I've got a tough decision to make:
A good friend of mine recently became an official consultant for a very big open source project, and says he gets way more consulting offers than he could handle even with 2 clones of himself. So he offered to train me and then pass some consulting jobs my way.
The thing is: The project deals with very low level C coding and requires a lot of computer architecture knowledge, so it will be a very steep learning curve for me. He acknowledges that, and he said he will do it knowing that for the first 3 months he won't get any productivity gains out of me.
I am also not sure if low level computer architectures is something I can get behind, I've never done anything like that before.
On the other hand: Consulting jobs generate a metric shitton of money, which is kinda nice to have, together with a very flexible working schedule.
Should I do it? I've got the feeling that it's a once in a lifetime offer, especially since the project is gaining more and more traction and is already being used by some of the biggest companies.
It would also mean that I would stop my electrical engineering master's degree if this turns out as a viable job.[/QUOTE]
If there's no downsides to trying it I don't see why not. And it being hard is not really a downside. Honestly I think you can get up and running pretty quickly, whenever I am on an internship it's 4 months total and I usually get to a productive stage in a couple of weeks, even if its tiny things at first.
The biggest thing is the domain knowledge and if your friend offered to train you then he probably has it and can support/help you which is great. C isn't very hard language, just a lot of boilerplate and gotchas.
Question that's been on my mind: Many languages use exceptions for regular code use, like throwing an exception to say an iterator has finished. Is this not a bad practice? I thought there were supposed to be used for extenuating circumstances and not for sunny-day code logic.
See: Python
EDIT: I mean this in a high-level theory way (how languages use exceptions behind the scenes to implement common logic).
Anything can be bad practice if someone is anal enough about it.
See: tabs vs spaces, /**/ vs //, etc
[QUOTE=DoctorSalt;52664696]Question that's been on my mind: Many languages use exceptions for regular code use, like throwing an exception to say an iterator has finished. Is this not a bad practice? I thought there were supposed to be used for extenuating circumstances and not for sunny-day code logic.
See: Python[/QUOTE]
I've never seen Python done like this. At least not if it was written competently. Do you have any examples? Python's try/except blocks are pretty much only for use when expecting an exception to be raised. Otherwise, why would you waste time creating exception classes just to use at the end of an iterator?
[QUOTE=DoctorSalt;52664696]Question that's been on my mind: Many languages use exceptions for regular code use, like throwing an exception to say an iterator has finished. Is this not a bad practice? I thought there were supposed to be used for extenuating circumstances and not for sunny-day code logic.
See: Python[/QUOTE]
Are you referring to something like this?
[code]it = iter(sequence)
while True:
try:
value = it.next()
except StopIteration:
break
print(value)
[/code]
If yes, it's not the pythonic way to use iterators, see [url]https://softwareengineering.stackexchange.com/questions/112463/why-do-iterators-in-python-raise-an-exception[/url]
And personally I think it's a good way to handle the case, as you're trying to get the next item where there is none, which is exceptional.
Sorry, you need to Log In to post a reply to this thread.