Skip to content

Instantly share code, notes, and snippets.

View fasterthanlime's full-sized avatar
🌌
4 oreos from heaven

Amos Wenger fasterthanlime

🌌
4 oreos from heaven
View GitHub Profile
@fasterthanlime
fasterthanlime / .zshrc
Last active August 5, 2017 12:03
Make git status outside dirs (because of zsh running it all the time) not super-slow on msys2
# that's it!
export GIT_CEILING_DIRECTORIES=/:/home
// before
const Component = require("./component");
class Container {
render() {
return <Component/>;
}
}
  • first-class transpiler support (pick your syntax sugar of choice, have it be sourcemapped easily in debuggers/stack traces/etc.)
  • easy & accurate code coverage tools (with sourcemaps too)
  • integrated console, debugger, memory, CPU profiler, network inspector (a key shortcut away, even in the production version of the app)
  • remote debugging too (renderer and main process - with the UI showing remotely in a way you can interact with)
  • great support for integration tests (aka webdriver - you basically send mouse/keyboard events and inspect the DOM to make sure what you expect to happen on screen happens)
itch => ./itch (interpreter => /lib64/ld-linux-x86-64.so.2)
libnode.so => ./libnode.so
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
libgtk-x11-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
libpangoft2-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0
libharfbuzz.so.0 => /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0
libgraphite2.so.3 => /usr/lib/x86_64-linux-gnu/libgraphite2.so.3
libgdk-x11-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
libXinerama.so.1 => /usr/lib/x86_64-linux-gnu/libXinerama.so.1
libatk-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0
1117 silly decomposeActions remove [email protected]
1118 silly install executeActions
1119 silly doSerial global-install 734
1120 verbose correctMkdir C:\Users\amwenger\AppData\Roaming\npm-cache\_locks correctMkdir not in flight; initializing
1121 verbose lock using C:\Users\amwenger\AppData\Roaming\npm-cache\_locks\staging-6211b113012dc3ab.lock for C:\msys64\home\amwenger\Dev\itch\node_modules\.staging
1122 silly doParallel extract 734
1123 silly doReverseSerial unbuild 734
1124 silly unbuild [email protected]
1125 info lifecycle [email protected]~preuninstall: [email protected]
1126 info lifecycle [email protected]~uninstall: [email protected]
--- many cut lines ---
1117 silly decomposeActions remove [email protected]
1118 silly install executeActions
1119 silly doSerial global-install 734
1120 verbose correctMkdir C:\Users\amwenger\AppData\Roaming\npm-cache\_locks correctMkdir not in flight; initializing
1121 verbose lock using C:\Users\amwenger\AppData\Roaming\npm-cache\_locks\staging-6211b113012dc3ab.lock for C:\msys64\home\amwenger\Dev\itch\node_modules\.staging
1122 silly doParallel extract 734
1123 silly doReverseSerial unbuild 734
1124 silly unbuild [email protected]
1125 info lifecycle [email protected]~preuninstall: [email protected]
@fasterthanlime
fasterthanlime / the-point-then.md
Created July 10, 2017 09:08
You don't even get Steam keys? Jeez, what's the point then?

I'm so glad you asked!

Buying on itch.io:

  • Supports creators - our default cut is 10%, but they can pick any.
  • Lets you play the games you buy, DRM-free, whether you want to use our desktop client or not.

Many platforms out there are fighting for the "best Steam key reseller" title, which often means "the cheapest", and some are famously known for not caring whether said keys were acquired legitimately or not.

(Keep in mind that key reselling is something Valve allows because having more players now means more revenue later. If/when it stops being economically viable for them, they'll have no reason to keep allowing that. Those platforms might have to rethink their model then.)

So I'm storing data in SQLite now, which means I need to make sure I know what I send to the database.

Which is why I define objects that look like this:

const GamePasswordModel = {
  tableName: "gamePasswords",
  primaryKey: "id",
 columns: {

9.2.6 (2017-06-16)

  • Fix the last coverage in trace log should be extracted. !11128 (dosuken123)
  • Respect merge, instead of push, permissions for protected actions. !11648
  • Fix pipeline_schedules pages throwing error 500. !11706 (dosuken123)
  • Make backup task to continue on corrupt repositories. !11962
  • Fix incorrect ETag cache key when relative instance URL is used. !11964
  • Fix math rendering on blob pages.
  • Invalidate cache for issue and MR counters more granularly.
  • Fix terminals support for Kubernetes Service.

ideally

write tests first, code later (TDD, test-driven development).

this only works if you have perfect knowledge of the domain problem and/or have infinite time. I don't have either of these.

in reality

working off an existing codebase: