Synchronize your main method, problem solved :)
programming languages at the poker table:
Wow....as a poker player I now have new nicknames I can give to players.
I'm doing some weird things in C++.
I have created a factory that uses a virtual function that takes any kind of output iterator and assigns objects to it.
That is... without using a template, since you can't do that with a virtual function. Using type erasure via a sort of 'any_output_iterator' object.
Combined with the header factory thing I did earlier this year, I feel like I'm edging into the stranger corners of this language.
(you could fake it via instanceof tests, but that is ugly)
sounds scary. in Java, an Iterator is almost, but not quite, read-only... you just couldn't do that.
Yeah, I'm not sure how best to do this kind of weirdness in Java.
OTOH, you probably don't mix generic and object oriented programming in Java... it's all just object oriented. You take a performance hit, but otherwise the code probably looks a tad cleaner.
I'm not afraid of what I'm doing in C++, honestly. I feel confident. But, yeah, I have to aknowlege that these are weirder edges. My motivations are clean, and I know I'm doing what is right. It is because I'm trying to do the right thing that I find myself doing stuff that's a bit weird... it's like, if you don't pay too much attention to the stuff I wrote that looks strange, and focus instead on just trying to do what you need to do (following the examples that already exist), I've made your work much easier.
..and suddenly a cab driver replies to the github issue:
Heh... apologizing for being noise...
"FilePizza is an isomorphic React application which uses the Flux application architecture."
At some point we exited the world of software development and entered some weird hippie buzzword altered-state reality. I'm just not sure when it happened.
Or, maybe it's just asynchronous instead.
Nah, pizza is parallel - just depends on who is in the room, and if they like mushrooms or pineapple.
I just figured something out, while sitting in my car hacking on Citadel code (waiting for my daughter's dance class to finish ... 2 hours at the computer is more productive than wasting :50 driving home and back).
My skills in managed hosting are hurting my skills in software development.
Today I finally started ripping apart a couple of small, outdated subsystems that need to be modernized. I've been skirting around them for months because I couldn't figure out a clean way to start working on them. I didn't really want to badly break the build, even on my own development machine.
Eventuallly I remembered the old adage "If you want to make an omelette, you've got to break some eggs."
And I realized that it has a lot to do with my career in managed hosting.
We run large scale data centers, and uptime is *everything*. Even a minute or two of downtime causes people to get hostile. So everything we do is carefully planned. Maintenance is like replacing the engine of an airplane while it's in flight.
I've got to get myself out of the habit of thinking of uptime when I'm working on a development system. It's ok to break the build on my own machine. It's ok if the code stops working for a few days. Nobody is running it in production.
I have a lot of brain damage. And this particular bit I probably can't blame on my parents.
I hear you IG. I work at a small hosting company and have the luxury of thinking out the "chess moves" of what I plan to do. I also have the luxury of performing some of the acrobatics involved overnight. The thing is, eventually, the businesses grows to a point where you are to a point where you are still in a hole in the ground and trying to pile up dirt to stay alive.
Some of my co-workers have a fear of 'breaking the build'. Understandable, but anything involving fixing setup involves breaking the build, since you have no other way to get the setup built.
Of course, there's also the whole 'branch, break the world in the branch, once you have it all working, merge again' sort of method.
maybe you should use the time of habit changing to start writing some tests? maybe using ctdlsh to test if its the same again after you modified everything? ;-)
I whish I have had this while debugging the eventloop stuff in citadel:
it records a session of a program with all io it does, and lets you replay it again and again in gdb.
No need for feeding in the external data again. Its storing and replaying all i/o state for you.
Man, that's what I need to get the guys to do... fix the damn testing harnesses so they're actually testing code in the builds.
Interesting. Can you run the same binary with recompiled code later, for test cases.
That could help unit testing, but would of course be brittle. You need the ability to edit the I/O data to suit changes in the code. Tricky. ;-)