1,317 reputation
1511
bio website
location
age 52
visits member for 3 years, 6 months
seen Dec 11 at 9:12

Currently working with QML/Qt and building seatback IFE for airlines. Turns out to be quite fun and since each project is a custom mix of hardware setup and client-driven features it also turns out to be always interesting.

Done building and updating tools for a new game engine. Lots of UX and all that jazz.

I am also EMT certified. Not currently active but will be looking for weekend volley or PRN opportunities later this year.

I'm a long time self taught game programmer having worked on many shipped titles, a number of published titles on various platforms and one cross-platform MMO so far.

-Patrick


Sep
29
comment Why do most programming languages have special keyword or syntax for declaring functions?
C has function pointers which, at least slightly, can be regarded as just another value. A dangerous value to mess with to be sure, but stranger things have happened.
Sep
24
awarded  Autobiographer
Jul
28
awarded  Citizen Patrol
Jul
27
comment What is the best practice for designing a system supporting many languages, 1 central dictionary for all languages or seperated dictionary?
I have to agree there with the storage and retrieval. All the multi-language pieces I've worked on work in whole phrases, and those are referred to by some identifier. Whenever the current language changes, a full set of strings is loaded for that language. The runtime (always a GUI for me) simply says something like "use phrase #12 here" and it pulls the entire string.
Jun
24
awarded  Yearling
Jun
11
comment Is the Entity Component System architecture object oriented by definition?
More traction especially since the whole point of components was to get away from intractable OOP hierarchies, good description of the benefit.
Jun
8
comment Correct process for creating builds reliant on 3rd party packages
We agree, I see your perspective in that light now! Yes, we're approaching his unquoted source of "proper programming practices" error from different sides =) OP, please cite where you picked up this proper practice from, no one does it that way because of everything Michael says here. I know that in my past practice, pulling an external update was a major effort and we locked down everyone's submissions while while merging and regression testing before opening the floodgates again. This was done very infrequently. Internally held versions were pulled on every automated build.
Jun
8
comment Correct process for creating builds reliant on 3rd party packages
The base point of something in the repo breaking your local build is backwards, the only thing that matters is that your local build doesn't break anything in the repo. The repo is what everyone gets, what releases are built from, and what your check-ins are tested against. If something is broken it's far better to catch it locally before you update the repo with changes that magically "well it worked on the programmer's machine" but break everyone else that tries to use it.
Jun
8
comment Correct process for creating builds reliant on 3rd party packages
Pulling fresh copies from the chain is common in automated build systems. The problem is not the pulling at build time, but not properly versioning upstream components of the build. If main package version 1.01 requires library 3.14 then pull from the 3.14 set and not a generic "library whatever, it has the same name" set =)
Jun
1
comment How to avoid oscillation by async event based systems?
Just this week I cut out instances of your #1 happening in my remote control app, and I solved it just like you describe. The "trick" I used was to have internal maintenance signals for local state maintenance and external for control inputs. Keeping this arms-length gap stops the feedback loops from forming.
May
15
comment How to find out if a tile is being covered by a polygon?
Shrink wrap it, perhaps a modified cs.sfu.ca/~haoz/teaching/projects/cmpt469/0501/shrink_wrap/… that pays attention to the grid size you've chosen?
Dec
28
comment Usefulness of “milestones” in agile development
+1 It's all about the customer. Sometimes the customer is your own marketing department, other teams like ops that need to support your code.
Dec
28
answered Usefulness of “milestones” in agile development
Dec
4
comment When interviewing programmers, are algorithm problem solving skills relevant for a job were solving such algoritm problems isn't normally needed?
@RobertHarvey, Assuming that the test is a sanity check and actually has some relevance to the job I agree with you. Leads forced into writing these kinds of questions for HR sometimes don't do such a great job, unfortunately.
Oct
9
answered Should integer divide by zero halt execution?
Sep
18
comment Writing my problem solving approach on paper?
That person is wrong. Most use shorthand like UML or pseudocode blocks, but whatever method you use has to work like your mind works and apparently yours needs paper =) I guess Feynman shouldn't be a physicist because he writes equations on the blackboard, right?
Aug
21
comment Refactoring c++
Kind of makes a good case for doing diligent design up front =) Just because agile-like methodologies let you dig 6 foot deep holes at each step to bury yourself in doesn't mean that you should run around digging holes before surveying the land and seeing whether you need holes in the first place.
Aug
2
comment One Scheduler vs. Many Schedulers
The only reason not to, other than clarity and ease of code maintenance into the future, would be that if any kind of conflict can arise from your 1..N schedulers all running their tasks simultaneously then you should not.
Jul
3
answered How many threads should access the file system at the same time?
Jun
27
comment Loose Coupling in Object Oriented Design
No option for Album being a Track factory, the created Track object which you then fill in through the ITrack interface? Maybe I misunderstand the scope of the question.