ro 4.2.0 → 4.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (156) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +29 -8
  3. data/LICENSE +1 -1
  4. data/README.md +274 -111
  5. data/Rakefile +2 -2
  6. data/lib/ro/_lib.rb +18 -6
  7. data/lib/ro/asset.rb +23 -13
  8. data/lib/ro/collection.rb +47 -4
  9. data/lib/ro/config.rb +4 -0
  10. data/lib/ro/error.rb +5 -2
  11. data/lib/ro/html.rb +23 -0
  12. data/lib/ro/html_safe.rb +143 -0
  13. data/lib/ro/methods.rb +95 -38
  14. data/lib/ro/node.rb +78 -35
  15. data/lib/ro/path.rb +4 -0
  16. data/lib/ro/template.rb +62 -22
  17. data/lib/ro/text.rb +120 -0
  18. data/lib/ro.rb +4 -0
  19. data/public/api/ro/index-1.json +997 -79
  20. data/public/api/ro/index.json +997 -79
  21. data/public/api/ro/nerd/fastest-possible-embeddings/index.json +90 -0
  22. data/public/api/ro/nerd/ima/index.json +49 -0
  23. data/public/api/ro/nerd/index/index.json +74 -0
  24. data/public/api/ro/nerd/index-1.json +204 -0
  25. data/public/api/ro/nerd/index.json +194 -0
  26. data/public/api/ro/pages/about/index.json +60 -0
  27. data/public/api/ro/pages/contact/index.json +50 -0
  28. data/public/api/ro/pages/cv/index.json +49 -0
  29. data/public/api/ro/pages/disco/index.json +117 -0
  30. data/public/api/ro/pages/index/index.json +30 -0
  31. data/public/api/ro/pages/index-1.json +366 -0
  32. data/public/api/ro/pages/index.json +356 -0
  33. data/public/api/ro/pages/jess/index.json +62 -0
  34. data/public/api/ro/pages/now/index.json +43 -0
  35. data/public/api/ro/posts/almost-died-in-an-ice-cave/index.json +265 -0
  36. data/public/api/ro/posts/facebook-and-global-extremism/index.json +90 -0
  37. data/public/api/ro/posts/index-1.json +461 -79
  38. data/public/api/ro/posts/index.json +461 -79
  39. data/public/api/ro/posts/lemmings-considered-harmful/index.json +49 -0
  40. data/public/api/ro/posts/lost-in-the-desert/index.json +49 -0
  41. data/public/api/ro/posts/mission/index.json +49 -0
  42. data/public/api/ro/posts/return-your-laptop/index.json +61 -0
  43. data/public/ro/nerd/fastest-possible-embeddings/assets/giraffe.jpeg +0 -0
  44. data/public/ro/nerd/fastest-possible-embeddings/assets/let-me-in.jpg +0 -0
  45. data/public/ro/nerd/fastest-possible-embeddings/assets/src/fastembed.js +70 -0
  46. data/public/ro/nerd/fastest-possible-embeddings/assets/src/fastembed.rs +68 -0
  47. data/public/ro/nerd/fastest-possible-embeddings/assets/terminal.jpg +0 -0
  48. data/public/ro/nerd/fastest-possible-embeddings/attributes.yml +7 -0
  49. data/public/ro/nerd/fastest-possible-embeddings/body.md +266 -0
  50. data/public/ro/nerd/ima/assets/og.jpeg +0 -0
  51. data/public/ro/nerd/ima/attributes.yml +8 -0
  52. data/public/ro/nerd/ima/body.md +22 -0
  53. data/public/ro/nerd/index/assets/giraffe.jpeg +0 -0
  54. data/public/ro/nerd/index/assets/let-me-in.jpg +0 -0
  55. data/public/ro/nerd/index/assets/terminal.jpg +0 -0
  56. data/public/ro/nerd/index/attributes.yml +7 -0
  57. data/public/ro/nerd/index/body.md +130 -0
  58. data/public/ro/pages/about/assets/og.jpeg +0 -0
  59. data/public/ro/pages/about/assets/speak-english-pulp-fiction.gif +0 -0
  60. data/public/ro/pages/about/body.md +40 -0
  61. data/public/ro/pages/contact/assets/giraffe.jpeg +0 -0
  62. data/public/ro/pages/contact/attributes.yml +7 -0
  63. data/public/ro/pages/contact/body.md +9 -0
  64. data/public/ro/pages/cv/assets/ara.jpg +0 -0
  65. data/public/ro/pages/cv/attributes.yml +6 -0
  66. data/public/ro/pages/cv/body.md +122 -0
  67. data/public/ro/pages/disco/assets/disco.jpg +0 -0
  68. data/public/ro/pages/disco/assets/disco.png +0 -0
  69. data/public/ro/pages/disco/assets/speak-english-pulp-fiction.gif +0 -0
  70. data/public/ro/pages/disco/assets/src/environment.md +2354 -0
  71. data/public/ro/pages/disco/assets/src/fortune-500.md +2518 -0
  72. data/public/ro/pages/disco/assets/src/greed.md +2703 -0
  73. data/public/ro/pages/disco/assets/src/up-at-night.md +2337 -0
  74. data/public/ro/pages/disco/attributes.yml +9 -0
  75. data/public/ro/pages/disco/body.md +99 -0
  76. data/public/ro/pages/disco/samples/environment.md +2354 -0
  77. data/public/ro/pages/disco/samples/fortune-500.md +2518 -0
  78. data/public/ro/pages/disco/samples/greed.md +2703 -0
  79. data/public/ro/pages/disco/samples/up-at-night.md +2337 -0
  80. data/public/ro/pages/index/attributes.yml +1 -0
  81. data/public/ro/pages/index/body.md +15 -0
  82. data/public/ro/pages/jess/assets/og.jpg +0 -0
  83. data/public/ro/pages/jess/assets/speak-english-pulp-fiction.gif +0 -0
  84. data/public/ro/pages/jess/attributes.yml +7 -0
  85. data/public/ro/pages/jess/body.md +3 -0
  86. data/public/ro/pages/now/assets/speak-english-pulp-fiction.gif +0 -0
  87. data/public/ro/pages/now/attributes.yml +1 -0
  88. data/public/ro/pages/now/body.md +24 -0
  89. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image1.png +0 -0
  90. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image10.png +0 -0
  91. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image11.png +0 -0
  92. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image12.png +0 -0
  93. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image13.png +0 -0
  94. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image14.png +0 -0
  95. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image15.png +0 -0
  96. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image2.png +0 -0
  97. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image3.png +0 -0
  98. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image4.png +0 -0
  99. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image5.png +0 -0
  100. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image6.png +0 -0
  101. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image7.png +0 -0
  102. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image8.png +0 -0
  103. data/public/ro/posts/almost-died-in-an-ice-cave/assets/image9.png +0 -0
  104. data/public/ro/posts/almost-died-in-an-ice-cave/assets/josh-pointing.jpg +0 -0
  105. data/public/ro/posts/almost-died-in-an-ice-cave/assets/levi-rawr.png +0 -0
  106. data/public/ro/posts/almost-died-in-an-ice-cave/assets/og.jpg +0 -0
  107. data/public/ro/posts/almost-died-in-an-ice-cave/assets/purple-heart.jpg +0 -0
  108. data/public/ro/posts/almost-died-in-an-ice-cave/attributes.yml +6 -0
  109. data/public/ro/posts/almost-died-in-an-ice-cave/body.md +419 -0
  110. data/public/ro/posts/facebook-and-global-extremism/assets/background.html +125 -0
  111. data/public/ro/posts/facebook-and-global-extremism/assets/background.md +95 -0
  112. data/public/ro/posts/facebook-and-global-extremism/assets/og.jpg +0 -0
  113. data/public/ro/posts/facebook-and-global-extremism/assets/prompt.txt +122 -0
  114. data/public/ro/posts/facebook-and-global-extremism/assets/results.md +183 -0
  115. data/public/ro/posts/facebook-and-global-extremism/assets/survey.txt +190 -0
  116. data/public/ro/posts/facebook-and-global-extremism/attributes.yml +7 -0
  117. data/public/ro/posts/facebook-and-global-extremism/body.md +393 -0
  118. data/public/ro/posts/lemmings-considered-harmful/assets/lemming.jpeg +0 -0
  119. data/public/ro/posts/lemmings-considered-harmful/attributes.yml +6 -0
  120. data/public/ro/posts/lemmings-considered-harmful/body.md +43 -0
  121. data/public/ro/posts/lost-in-the-desert/assets/og.jpg +0 -0
  122. data/public/ro/posts/lost-in-the-desert/attributes.yml +6 -0
  123. data/public/ro/posts/lost-in-the-desert/body.md +7 -0
  124. data/public/ro/posts/mission/assets/og.jpg +0 -0
  125. data/public/ro/posts/mission/attributes.yml +6 -0
  126. data/public/ro/posts/mission/body.md +4 -0
  127. data/public/ro/posts/return-your-laptop/assets/og.jpg +0 -0
  128. data/public/ro/posts/return-your-laptop/assets/return-your-laptop.png +0 -0
  129. data/public/ro/posts/return-your-laptop/attributes.yml +6 -0
  130. data/public/ro/posts/return-your-laptop/body.md +58 -0
  131. data/ro.gemspec +178 -49
  132. data/scripts/speedtest.rb +324 -0
  133. data/tmp/gem-details.oe +0 -0
  134. metadata +157 -33
  135. data/public/api/ro/posts/first_post/index.json +0 -52
  136. data/public/api/ro/posts/second_post/index.json +0 -51
  137. data/public/api/ro/posts/third_post/index.json +0 -51
  138. data/public/ro/posts/first_post/assets/foo/bar/baz.jpg +0 -0
  139. data/public/ro/posts/first_post/assets/foo.jpg +0 -0
  140. data/public/ro/posts/first_post/assets/src/foo/bar.rb +0 -3
  141. data/public/ro/posts/first_post/attributes.yml +0 -2
  142. data/public/ro/posts/first_post/blurb.erb.md +0 -7
  143. data/public/ro/posts/first_post/body.md +0 -16
  144. data/public/ro/posts/first_post/testing.txt +0 -3
  145. data/public/ro/posts/second_post/assets/foo/bar/baz.jpg +0 -0
  146. data/public/ro/posts/second_post/assets/foo.jpg +0 -0
  147. data/public/ro/posts/second_post/assets/src/foo/bar.rb +0 -3
  148. data/public/ro/posts/second_post/attributes.yml +0 -2
  149. data/public/ro/posts/second_post/blurb.erb.md +0 -5
  150. data/public/ro/posts/second_post/body.md +0 -16
  151. data/public/ro/posts/third_post/assets/foo/bar/baz.jpg +0 -0
  152. data/public/ro/posts/third_post/assets/foo.jpg +0 -0
  153. data/public/ro/posts/third_post/assets/src/foo/bar.rb +0 -3
  154. data/public/ro/posts/third_post/attributes.yml +0 -2
  155. data/public/ro/posts/third_post/blurb.erb.md +0 -5
  156. data/public/ro/posts/third_post/body.md +0 -16
@@ -0,0 +1,22 @@
1
+ `ima` is the universal unix filter.
2
+
3
+ it is one part code generator, one part writing assistant, one part magic cli.
4
+
5
+ and one part super uber ultra tiny: currently weighing in at about 250 lines of code
6
+ while offering 80% of the functionality of insanely large, expensive, and
7
+ privacy violating ide plugins.
8
+
9
+ it is under active development and requires no dependencies except ruby and a
10
+ groq api key. if you don't understand the difference between 'inference' and
11
+ 'training' best move along... nothing to see. keep shipping your .env files
12
+ to microsoft and openai. no really ;-)
13
+
14
+ super short sneak peaks for now:
15
+
16
+ 1. [code and prose editing with shortcodes](https://photos.app.goo.gl/lgbtthvrywtubvgr9)
17
+ 2. [the do *anything* unix filter mode](https://photos.app.goo.gl/d3hopktecraq4cxls8)
18
+ 3. [using local context](https://photos.app.goo.gl/ldd1tyaj5zsde1qo59)
19
+
20
+ you may have noticed but.. to date, **259 lines of code**
21
+
22
+ it will get bigger but, not by much [reach out](/contact) to learn more.
@@ -0,0 +1,7 @@
1
+ og:
2
+ title: 'Big fat 🤓'
3
+ description: >-
4
+ I have grown so tall!
5
+ image:
6
+ url: ./assets/giraffe.jpeg
7
+ width: 2048
@@ -0,0 +1,130 @@
1
+ ### they say i am a big fat 🤓 -- and they are right!
2
+
3
+ for some strange reason, this makes me happy:
4
+
5
+ ![](./assets/terminal.jpg "image of terminal")
6
+
7
+ as you can read on my [about](/about) page, i have written [way too much software](/rubygems).
8
+
9
+ i got my start researching _in_ [NOAA](https://www.boulder.noaa.gov/)
10
+
11
+ _for_ [C.I.R.E.S](https://cires.colorado.edu/)
12
+
13
+ while studying _at_ [CU's College of Engineering & Applied Science](https://www.colorado.edu/engineering/)
14
+
15
+ > wut?
16
+
17
+ basically, the university has a program that donates young scientists to other
18
+ research institutes, to help do science.
19
+
20
+ its goal is getting the university's name on papers which, if you know
21
+ anything about science, is gold. publish or perish... etc. publishing ==
22
+ funding.
23
+
24
+ **30** years later, i realize that this was a fantastic introduction to start-up
25
+ culture. no b.s., just, make shit that works, and _go_. no one to tell you
26
+ what _'not to do'_ or market signals that design your product for you so you
27
+ don't have to actually think and be bold - just raw _instinct_ about what
28
+ should be studied, how, and _why_.
29
+
30
+ that, and fundraising... nothing like buildig stuff and figuring out how to
31
+ pay for it at the same time ;-)
32
+
33
+ the first project i did at CIRES, is still one of my favorite projects of all
34
+ time: we wrote a system, designed to run on old-skool linux field computers,
35
+ that forest fire fighters would use, tactically, in the field, to decide
36
+ weather/whether or not (pun intended), sending a crew up a canyon to battle
37
+ the blaze would result in them dying. mainly it was a wind analysis tool,
38
+ hyper local weather, delivered to a device, long before iphones became a
39
+ thing.
40
+
41
+ (this is my explanation for why, when the [los angeles fires](https://photos.app.goo.gl/Kjipk8eKT88CtSRSA)
42
+ erupted i hopped right on my bike and went to check them out... fires and the jobs responders
43
+ are required to do, for $26/hr, astounds me)
44
+
45
+ subsequently, i went to work at FSL (Forecast Systems Lab) doing
46
+ hyper-high-availability (5 9s ((99.999 % uptime))) for operational satellite
47
+ ingest systems.
48
+
49
+ we designed cutting edge systems. and novel... brutal... methods of ensuring
50
+ consistency of classified data such as STONITH, which stands for "Stone The
51
+ Other In The Head", a method used in what were then cutting edge
52
+ high-availibilty clusters that would manage taking over as 'master' (a term
53
+ since banished from software, probably for the best...) by literally toggling
54
+ the power of the other node, to be damn sure it was off. things we simpler
55
+ then, but also very complex. there was a lot to invent on every project.
56
+ sass wasn't even a word.
57
+
58
+ i also did a lot of work in model verification: geophysical models take
59
+ hundreds, or thousands, or even hundreds of thousands, of configurations to
60
+ run. people talk about how neat 12-factor configuration is now, and i just
61
+ shake my head... what if you had to manage millions of configuration values?
62
+ the next trick is version them, so we know how they change over time because,
63
+ as scientists, if we make a change to say, a cloud physics model, we need to
64
+ 'test it'. but
65
+
66
+ > how *do* you test software, when you don't now the 'right answer'?
67
+
68
+ the approach is actually, theoretically, simple:
69
+
70
+ you hold all variables, all the hundreds of thousands of them, constant, make
71
+ changes to a few, and then look for patterns of changes in the output. in the
72
+ case of weather models, this could be mean that a change to a cloud physics
73
+ model resulted in predicting 8/9 historical storms with accuracy, vs. the 7/9
74
+ a previous iteration would have predicted.
75
+
76
+ this type of analysis, foreign to many engineers, is back with vengance,
77
+
78
+ thanks to [AI](/disco)...
79
+
80
+ my next stint was at [The National Geophysical Data Center](https://www.ngdc.noaa.gov/), where i was able to participate in a bunch of super cool research:
81
+
82
+ - <a href='/purls/can-poverty-rates-be-estimated-using-satellite-data'>/purls/can-poverty-rates-be-estimated-using-satellite-data</a>
83
+ - <a href='/purls/a-global-inventory-of-coral-reef-stressors-based-on-satellite-observed-nighttime-lights'>/purls/a-global-inventory-of-coral-reef-stressors-based-on-satellite-observed-nighttime-lights</a>
84
+ - <a href='/purls/change-detection-in-satellite-observed-nighttime-lights-1992-2003'>/purls/change-detection-in-satellite-observed-nighttime-lights-1992-2003</a>
85
+ - <a href='/purls/a-twelve-year-record-of-national-and-global-gas-flaring-volumes-estimated-using-satellite-data'>/purls/a-twelve-year-record-of-national-and-global-gas-flaring-volumes-estimated-using-satellite-data</a>
86
+ - <a href='/purls/global-distribution-and-density-of-constructed-impervious-surfaces'>/purls/global-distribution-and-density-of-constructed-impervious-surfaces</a>
87
+
88
+ and built very, very [large super-compute](https://www.linuxjournal.com/article/7922),
89
+ essentially big fat map-reduce style computing but, at the time, neither of
90
+ those terms existed. we had to invent novel ways, of moving our code of off
91
+ big-endian (not spelled wrong) cray (also not spelled wrong) machines and onto
92
+ tons of commodity hardware. namely, hundreds of linux boxen.
93
+
94
+ i also did a ton of work around clustering... very low level c/c++ code, using
95
+ ideas from signal processing and computer vision, to detect the edges of cities
96
+ via a process similar to the [watershed algorithm](https://en.wikipedia.org/wiki/Watershed_(image_processing))
97
+ but... at scale.
98
+
99
+ throughout my tenure at NGDC, i was allowed to release piles of open source
100
+ software and, i am very, very grateful for this. eventually i was able to
101
+ share, through oss, over 200 open source projects enjoyed by many. i think
102
+ this was foundational to my eventually winning a 'ruby hero' award and wish
103
+ that more young engineers had creative time to just build things. this, is
104
+ where true innovation comes from i believe. not board rooms or from mining
105
+ the data to just give people what they want. which, is probably potato chips.
106
+
107
+
108
+ <hr>
109
+ __coffee break...__
110
+ <hr>
111
+
112
+ next, [this cowboy](https://www.linkedin.com/in/gregory-greenstreet-082635/)
113
+ hired me: to compile the [GNU scientific library](https://www.gnu.org/software/gsl/) on.. wait for it... **windows**!
114
+
115
+ yep, i am _that_ old!
116
+
117
+ (strange that, for the first time ever, i would actually now consider owning a
118
+ micro$oft computer but... only because they run linux ;-)
119
+
120
+ anyhow, Greg worked for [Don Springer](https://www.linkedin.com/in/dospringer/), at company called [Collective Intellect](https://www.oracle.com/corporate/pressrelease/oracle-buys-collective-intellect-060512.html). which, at the time, was the "Mobius Group" (which would eventually become [The Foundry Group](https://foundry.vc/) and... **#BOOM** .. start-ups in Boulder, Colorado, were a thing.
121
+
122
+ it was fun time.
123
+
124
+ it was after this that i started [dojo4](/dojo4), which was the crown jewl in my life as a geek, for many reasons i hope to write about soon. including close to ten years mentoring [techstars](https://www.techstars.com/) companies where, i have made some super duper great friends.
125
+
126
+ until then, i will say, as i always do that:
127
+
128
+ - this is all, always, a work in progress.
129
+ - i am doing it live.
130
+ - i cannot spell, so sue me. (a little dislexic, in fact.)
@@ -0,0 +1,40 @@
1
+ ---
2
+ og:
3
+ title: ara.t.howard
4
+ description: my insides are made out of outsides. i bite.
5
+ image:
6
+ url: /ro/pages/about/assets/og.jpeg
7
+ ---
8
+ this is the part i hate. writing about myself.
9
+
10
+ i'll start at the beginning:
11
+
12
+ * grew up in [alaska](https://photos.app.goo.gl/3aa3Fkwe9EyQg7kf6), 4th * generational irish people, been _here and there_ the past few years.
13
+ * roamed the planet racing bikes and skis. this before phones, gps, or * digital cameras.
14
+ * raised a family in boulder, colorado.
15
+ * researched [life on earth from space](https://independent.academia.edu/arahoward) for about a decade.
16
+ * wrote a [ton of software](https://github.com/ahoward), some that [i am even proud of](https://www.linuxjournal.com/article/7922).
17
+ * founded, built, and ran [dojo4](/dojo4) for almost exactly a decade.
18
+ * ranted about the dangerous of big tech, and responbility of software developers, in [kyiv 2015](https://www.youtube.com/watch?v=sKNENzPpSrA).
19
+ * mentored dozens of techstars startups, worked with and for over a hundred.
20
+ * 2020 // COVID // massive life changes. collapse. like everyone else.
21
+ * subsequently, a ton of * [mountains](https://photos.app.goo.gl/ZLLWKpux5jns3JUH9).
22
+ * somehow managed to get lost in the [southwest for the 42'nd time in my life](https://photos.app.goo.gl/rnSLBr9MoWMHv1zx6).
23
+ * started [riding my bike to * alaska](https://photos.app.goo.gl/wMDwwuFamRWWgZiu6).
24
+ * met a girl in [LA](https://photos.app.goo.gl/MpSigk5BJwqeouiUA).
25
+ * [almost died in an ice cave](/io/almost-died-in-an-ice-cave).
26
+ * been cranking on a [new stuff](/now).
27
+ * and [riding bikes with a broken leg](https://photos.app.goo.gl/ikwjrYWBXEvFbwbx7).
28
+
29
+ this is _absolutely_ and _always a work in progress...
30
+
31
+ so check back soon or just <a href="contact">contact</a> me if you are a-wondering _wtf_ is up?
32
+
33
+ > bored: 🐼 ???
34
+
35
+ [iff](https://letmegooglethat.com/?q=what+does+iff+mean) you are so inclined, you can follow along with the madness here ->
36
+
37
+ - <a href="https://github.com/ahoward/drawohara.io">https://github.com/ahoward/drawohara.io</a>
38
+ - here <a href="https://bsky.app/profile/drawohara.io">https://bsky.app/profile/drawohara.io</a>
39
+ - or here -> <a href="https://www.instagram.com/drawohara">https://www.instagram.com/drawohara</a>
40
+ - or even here (ssssshhhhhhh) -> <a href="https://syntheticecho.com">https://syntheticecho.com</a>
@@ -0,0 +1,7 @@
1
+ og:
2
+ title: 'Hit me up 🦒 yo!'
3
+ description: >-
4
+ I have grown so tall!
5
+ image:
6
+ url: ./assets/giraffe.jpeg
7
+ width: 2048
@@ -0,0 +1,9 @@
1
+ whelp! no sophisticated spam blockage here, what could go wrong? 😂
2
+
3
+ you are welcome to contact me the old fashioned way, by emailing me at <a href="mailto:drawohara@drawohara.io?subject=yo+@drawohara"> drawohara@drawohara.io </a>.
4
+
5
+ specific reasons why you hate me can be sent to <a href="mailto:i-hate-this@drawohara.io?subject=#HATEMAIL"> i-hate-this@drawohara.io </a>, and all the ❤️ should go <a href="mailto:i-love-this@drawohara.io?subject=❤️ "> here </a>.
6
+
7
+ because i have grown so tall! 🦒
8
+
9
+ ![ara.t.howard as a giraffe](./assets/giraffe.jpeg)
Binary file
@@ -0,0 +1,6 @@
1
+ og:
2
+ title: 'Ara T. Howard'
3
+ description: >-
4
+ wrtiting way too much software. trying to make a difference.
5
+ image:
6
+ url: ./assets/ara.jpg
@@ -0,0 +1,122 @@
1
+ ##### [tl;dr](#tl;dr)
2
+
3
+ ---------------------
4
+ * ara t. howard
5
+ * boulder, colorado // palmer, alaska // tabernash, colorado // los angeles, california
6
+ * [drawohara@drawohara.io](mailto:drawohara@drawohara.io)
7
+ * [303-747-3468](tel:303-747-3468)
8
+ * [https://github.com/ahoward](https://github.com/ahoward)
9
+ * [https://independent.academia.edu/arahoward](https://independent.academia.edu/arahoward)
10
+ * [https://www.linkedin.com/in/arahoward/](https://www.linkedin.com/in/arahoward/)
11
+ * [https://www.instagram.com/drawohara/](https://www.instagram.com/drawohara/)
12
+ * [https://drawohara.io/](https://drawohara.io/)
13
+
14
+ ##### [readme](#readme)
15
+
16
+ -----------------------
17
+ creating things out of virtual nothingness remains my favorite artform, even after 20 years as a professional software architect. right after [traversing natural landscapes and petting dogs](https://photos.app.goo.gl/FwwxEygH55JnQR8n8).
18
+
19
+ in my career i have designed custom databases and [super-compute clusters](https://www.linuxjournal.com/article/7922) to enable large scale meteorological verification studies before the cloud existed. designed algorithms to detect the edge of cities based on nighttime light signals combining the leading edge of computer vision techniques with geophysical data. built fast static website site generators aimed at security and scale when php was the only game in town. contributed to many open source projects, such the then nascent ruby on rails. and released over 100 of my own, some downloaded millions of times.
20
+
21
+ in my over ten years running the impact start-up focused software agency [dojo4](https://dojo4.com), working across hundreds of projects, and mentoring dozens of budding tech stars companies full of bright eyed entrepreneurs, i have been fortunate enough to see the light and dark parts of many software based journeys. it has been an eye opening education learning first hand just how much pain tiny and seemingly unimportant technical decisions can cause for future you, how focusing and refocusing on the three most important things over and over is the key to building great software that actually helps people, and witnessing how ruthless commitment to mission and vision can change the world one byte at a time.
22
+
23
+ in software as in mountaineering, although i appreciate an expedition style, i prefer, and have seen much greater success, with a fast and light approach. one that focuses on steel threads, ideals, atoms, ethics, and systems instead of just letting the market define what engineering tasks should be on the board. approaches that require personal dedication, sacrifice, and real work to execute on.
24
+
25
+ i am currently in a unique position, having reduced my own life footprint dramatically in order to create space for creativity. its because so many big problems still exist, and i would love to talk about yours, and how hard we can go, in order to solve it. big problems, are big fun.
26
+
27
+ ##### [work](#work)
28
+
29
+ -------------------
30
+ ##### cooperative institute for research in environmental sciences at the university of colorado boulder (cires) @ forecast systems laboratory (fsl), national oceanic and atmospheric administration (noaa)
31
+ -- _student assistant (sa)_ (1998-2000)
32
+
33
+ * data visualization (r/s/idl/matlab)
34
+ * low-level optimizations of meteorological algorithms (c/fortran/lisp)
35
+ * ported the ruc weather model from big-endian cray machines to little-endian linux nodes
36
+ * ported ruc weather model across y2k code boundary
37
+ * began contributing to open-source projects
38
+
39
+
40
+ -------------------
41
+ ##### cires @ integrated systems group (isg), noaa
42
+ -- _professional research assistant (pra)_ (2000-2003)
43
+
44
+ * developed hardware and software platforms for 24x7 high-availability environments for meteorological data ingest and dissemination (ruby, perl, ml, c, c++, bash, java)
45
+ * developed methodology, software libraries, database, and services for bi-temporal meta-data support regression analyses over large-scale real-time meteorological models
46
+ * released ~10 open-source libraries into the ruby, perl, and c ecosystems
47
+
48
+
49
+ -------------------
50
+ ##### cires @ defense meteorological satellite program (dmsp), noaa
51
+ -- _professional research assistant (pra)_ (2003-2007)
52
+
53
+ * studied global population dynamics via nighttime lights
54
+ * developed novel user-space super-computing methodologies for research scientists
55
+ * developed approaches and techniques for edge detection along high-rate-of-change regions on city boundaries
56
+ * released over 100 open-source libraries
57
+ * published research papers and articles
58
+
59
+
60
+ -------------------
61
+ ##### codeforpeople.com, llc.
62
+ -- _founder_ (2007-2010)
63
+
64
+ * developed custom solutions for boulder's emerging start-up space in ruby, c, and java
65
+ * wrote early lines of code for companies later acquired by oracle and twitter
66
+
67
+
68
+ -------------------
69
+ ##### dojo4, lca/b-corp
70
+ -- _founder, partner, principal_ (2010-2020)
71
+
72
+ * developed custom solutions for over 200 tech start-ups
73
+ * founded and chaired the boulder awesome chapter
74
+ * won a ruby hero award
75
+ * mentored at techstars and unreasonable institute
76
+
77
+
78
+ -------------------
79
+ ##### mainstreet.com
80
+ -- _principal engineer_ (2020-2021)
81
+
82
+ * developed a mongodb-based archive, caching, and analytics layer for external payroll data
83
+ * introduced key technologies and design patterns into a rapidly evolving code base
84
+
85
+
86
+ -------------------
87
+ ##### matanuskafrontiertrek.com
88
+ -- _founder, guide_ (2021-present)
89
+
90
+ * developed a nextjs, strapi, and render.com-based platform for a pet project/side business
91
+
92
+
93
+ -------------------
94
+ ##### mountainhigh.codes
95
+ -- _founder, principal engineer_ (2021-present)
96
+
97
+ * developed fast and light engineering solutions for non-profits and mountain companies using 11ty, nextjs, and other static-first technologies
98
+ * bringing simple and cost effective ai solutions to individuals, non-profits, and small businesses
99
+
100
+
101
+ -------------------
102
+ ##### syntheticecho.com
103
+ -- _founder, principal engineer_ (2024-present)
104
+
105
+ * services and software that bring the 'social voice' to artificial intelligence applications and research
106
+
107
+
108
+ ##### [education](#education)
109
+
110
+ -----------------------------
111
+ ##### university of alaska anchorage, anchorage, alaska
112
+ -- _student/athelete_ (1992-1994)
113
+
114
+ * studied biochemistry and competed in d1 nordic skiing
115
+
116
+
117
+ -----------------------------
118
+ ##### university of colorado at boulder, boulder, colorado
119
+ -- _student/athelete_ (1999-2003)
120
+
121
+ * studied computer science and designed a senior year project for noaa/cires
122
+ * earned a 10th place finish at collegiate nationals and transitioned into the workplace at noaa/cires as a research associate