Native Programming Languages
C++/11/14, C, C#/.NET, x86/x64 assembly
Lots of experience with 3D graphics, transformations, collision detection, physics, hidden suface determination and bounding volume hierarchies, animation, cubic bezier and Catmull-Rom splines, interpolation, OpenGL (old and modern), multithreaded rendering and asynchronous render worker.
Extensive knowledge of x86 and x86_64 operating system internals including the legacy protected mode, including BIOS APIs, LDT/IDT/GDT/gates/traps/descriptors/paging, filesystem structure details - mostly FAT/FAT32 and NTFS (I have implemented read/write implementations for both), memory management / paging, dynamic linking, relocations/rebasing.
Web back end
NodeJS, PHP, Express, Sequelize, MySQL, mysqli, PostgreSQL, Apache, Ubuntu Server, SSH, extensive knowledge of internet protocols.
Web front end
Exhaustive knowledge of jQuery, Chrome and Firefox debugging expert. HTML5, CSS, jQuery plugin development, AngularJS, pure JS, SVG, WebGL/OpenGL ES, Ajax and Promise/A+ expert, CORS, cross-domain, complex asynchronous pipelines, animation.
Embedded and processors
Atmel microcontrollers, electronics hobbyist, Verilog, CPU architecture and design, SSE/2/3/AVX, x87 FPU software floating point and extensive IEEE-754 knowledge, performance analysis, XPerf, Linux Perf, performance counters, instrumentation, optimization.
TCP/IP, SSH, Samba/CIFS, SSHFS, SSHFTP, Win32 sockets
Some examples: Perl (< 5), Netscape (very early JS), FoxPro 2.6 for DOS (mastered), FoxPro for windows expert, QuickBasic, VB6, Win32 COM Components, PC/AT 80286-12MHz experience (assembly, sound card hardware programming, DMA, interrupt handlers, EMS, XMS, DOS extenders, v86 mode, MS-DOS 6.22, Windows 3.1), Commodore 128D experience, Commodore VIC-20 experience (6502 assembly + ancient 2-character-identifiers BASIC). Basically since 1988.
I use Ubuntu as my OS, my main machine is a nice big fast laptop with a nice big screen.
Member for 8 years, 11 months
41 profile views
Last seen 2 days ago