Skip to content
View EricGebhart's full-sized avatar

Block or report EricGebhart

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
EricGebhart/README.md

Erica Lina / Homepage / Tango Home page / GitHub / Exercism / Short Edition

A few things.

  • I am no longer Eric, I no longer identify with him. I leave his historic projects here for their value and history both in themselves and as a reflection of who Eric was.

  • I have moved to gitlab in order to no longer support github. You may find me and my continuing efforts at My Gitlab.

  • This github account is no longer actively used. I leave it here as a stake in time which still has valueable resources and history. A few of these projects continue on at the above gitlab link.


Hello, I'm Erica, 
my being and place in the world is very different from what
Eric's was. I consequently see differently and am a different person.

    
I write as if he is passed, 
because he has, 
he can no longer be, 
except as my experience, a memory,

if I am to be,

I could not be him.
    

You can find me in the present at My Gitlab.

Eric wrote the following, I changed the tense.

Have a beautiful day Erica

Eric worked in many domains using many languages over the decades. He designed and built many systems, most of which were/are proprietary. He loved creating beautiful code. His strongest languages were C, python, clojure, elisp and Unix tools. He did a lot of object oriented work in C derived languages and python. He wrote a few languages and frameworks. He created a few publishing systems, using troff, LaTeX and many other markup languages. His favorite language was clojure and functional programming which he was likely to do in any language.

He was an Arch linux, Xmonad user/programmer for many years and he wrote a lot of Emacs lisp.


Clojure

Eric wrote a lot of proprietary clojure code. Some his libraries for data processing with Hadoop and cascalog are available here publicly.

Natural Languages

He was very interested in learning natural languages. He developed his own pedagogy in order to learn french, and continued with Roumanian, Italian and Spanish. He's done some plugins for Anki in the past. He was a writer, so his emacs was setup with a variety of tools to enable that, input methods, language-tool, dictionaries, synonyms, etc. His QMK keyboard firmware also supports multiple languages. It is, however, out of date at this point. Go find Erica on gitlab.

His old book - ODS Markup: Tagsets by Example.

If you are a user of SAS ODS and Tagsets, you may be interested in the book he wrote many years ago on his Tagset language. It was slated to be published by SAS Press but never was. So he gives it here for free. Installing LateX and compiling it to pdf is a to do.

ODS Markup: Tagsets by Example

Code tests

You might notice he has a few code tests, some of these have come from interview processess. He didn't believe in code tests as an adequate method of ascertaining abilities. <br/

Some Favorite projects.

Aside from the very mundane setup and configuration repos, Eric's favorite projects over all others are SPR, Plysp, Word-Search, Bike-Gear-Calculator, and QMK_firmware/MyQMK. My QMK, Xmonad and Emacs setups are always getting tweaks. He always used scad-clj for 3D work.

His dfs-clj/DFS datastore library does make it very easy to create immutable, partitioned/sliced no sql databases with hadoop, which can be quite fun to play with. Ironically, it seems that Cascalog integrates with Clojure much more nicely than Datomic´s datalog which is verbose and ugly. It needs an update but dfs-clj has worked admirably with a variety of big data sources over extended periods.


  • Arch linux packages - This uses Make to create nice repeatable installation of packages.
  • Arch linux install My Arch linux installation script.
  • SPR - Simple Process Repl - A very cool stackless, auto-binding, self-documenting language at this point. SPR Wiki
  • Plysp A simple lisp after clojure. [~90% complete] - SPR has been too fun.
  • My Xmonad window manager. A fairly extensive custom configuration/executable.
  • My Emacs Setup - It´s home grown since 1995, so this shows my way of organizing emacs.
  • scad-clj Coding Open SCAD with clojure, I contributed significantly in it´s beginnings.
  • clojure cli extension A library to make the creation of command line interfaces in clojure easier and more robust.
  • datetime data A Clojure datetime library for normalizing dates.
  • file access A Clojure file-access library to which creates a consistent API for various types of files.
  • dfs-clj - This is the core layer above hadoop to manage pails, data partitioning, and tapping into data with Cascalog. After _Nathan Marz_´s Lambda Architecture.
  • Pail-Schema-Example - This is an example project that shows how to use pails and schema with hadoop and cascalog. This is using dfs-clj before dfs-clj came about. See my post Here. And another post here.
  • Word search - Something I wrote from my own motivations. A meta data collector for words. I have plans for it.
  • bike gear calculator - I wanted a nice one, and I wanted to learn clojure/spec.
  • flickr-fetcher - A code test, turned into a design test. It won a job for me and solved their troubles.
  • ODS Markup: Tagsets by Example - A book I wrote about ODS Markup, never published, for forgotten reasons.
  • SAS-Papers - My papers which will show my writing and give some insight into SAS ODS for which I was a significant contributor.

Programming, tools, utilities

  • MyQMK A sparse tree of my QMK keyboard user space and the keyboards I have keymaps for.
  • Emacs My old school, from scratch emacs setup.
  • Xmonad My Xmonad window manager.
  • Arch linux install My Arch linux installation script.
  • Arch linux packages My Arch linux Meta packages, as well as a fair bit of code.
  • Onboard keyboards Dvorak and Qwerty Ortho-linear keyboards for the Onboard on screen keyboard.
  • view-attachment Mutt and OS X integration script, written many years ago.
  • xmonad-log-applet Getting Xmonad to talk over DBus to a toolbar, an orphaned project which I brought back to life.
  • Hunspell Dictionaries A collection of Hunspell dictionaries for use with emacs, or whatever else.
  • bc-extensions A collection of extensions for use with the bc unix calculator.

Python projects

  • SPR - Simple Process Repl A simple lisp like programming language and Application framework . SPR Wiki
  • PBR - Particle Board Repl The precursor to SPR. A simple lisp like programming language and Application framework for working with Particle.io boards.
  • Plysp A simple lisp after clojure using a BNR grammar, It works but falls short of complete. The plan is to turn the core into Cython when it is time for performance enhancement. It does not yet have tail call recursion or a complete implementation of macros among other things.
  • Bar QR code A simple program to print bar and qr codes. Written one afternoon according to the desires of a client. Not my style, but there it is. I rewrote this in SPR as an example, that one is nicer.

Clojure projects

  • Word search Collect meta data and create conjugaison trees from words in wiktionary.
  • bike gear calc A bike gear calculator for fixed gear, internal gear and deraileur gear bikes which uses Schema.
  • bike gear calc UI The beginning of a clojurescript/ReFrame UI for the bike gear calculator.

Libraries that I created and used within the Applications I created for Yeti Data.

  • clojure cli extension A library to make the creation of command line interfaces in clojure easier and more robust.
  • datetime data A datetime library for normalizing dates.
  • file access A file-access library which creates a consistent API for various types of files, S3, SFTP, Github.

Dfs datastores, These libraries were inspired by Nathan Marz, his book Big Data and the Lambda Architecture. Pre Clojure/Schema. Uses Prismatic Schema and Fressian.

  • dfs-clj A library which combines all of the dfs libraries into one, for managing dfs datastores with cascalog on hadoop. The following libraries are all embodied in dfs-clj.
    • pail-graph Extension library to streamline the use of Graph Schema thrift objects with Pail and Cascalog.
    • pail-schema Dfs-datastores Pail infrastructure using Prismatic Schema and Fressian.
    • clj-pail-tap Extension library to enable easier tapping of pails.
    • Pail-Fressian Pail structure, serializer and partitioners using Fressian.
    • Pail-Schema-Example Example of using pail-schema to validate, coerce, and write data to a pail, then query it with cascalog.
    • clj-thrift A Clojure abstraction for Thrift.
    • clj-pail A Clojure abstraction for working with Pail.
    • pail-thrift Serialization and partitioning strategies for using Thrift with clj-pail.
    • pail-cascalog A Clojure library for working with Pail within Cascalog.
    • thrift-pail-cascalog-example An example of using graph schema, thrift, pail and cascalog..

Code tests and explorations

  • Exercism Clojure, Haskell, scheme, python. The exercises I´ve done over the years in Exercism.
  • flickr-fetcher Clojure/Design. A design for a not so simple http endpoint to give recent images from flickr. This solved the enterprise´s problems with scalability, image size and quality, while allowing compromises and staging of the implementation according to resource availability.
  • Suduku validator Clojure: A calculator to validate a suduku board. A nicer solution to a code test I did in python.
  • Poker Clojure: A game of poker from the Asheville Coders League Day of Code challenge.
  • Swapp Clojure: A simple example to understand clojurescript and figwheel.
  • Product Inventory Server Python & flask, A product inventory server. A code test.
  • Product Inventory UI A clojurescript/ReFrame/React front end for a product inventory control system.

SAS related projects, papers, etc.

  • ODS Markup: Tagsets by Example - A book I wrote many years ago about ODS Markup and tagsets.
  • SAS-Papers The various papers I wrote and presented during my time at SAS.
  • SAS-Examples The Example code to go with all of the papers.
  • SAS-Tagsets The Source for all the official ODS Markup Tagsets as of 2013.
  • SAS-Vim Vim extensions for programming with Vim. - As an emacs/evil user I do not use this, apparently many people do.

Contributions

  • QMK Firmware QMK firmware for custom keyboards.
  • Open SCAD clj A clojure wrapper for Open-scad so that scad can be programmed from clojure.
  • Golden Ratio Emacs package which automatically resizes windows in an intelligent way.
  • cider Clojure environment for emacs.

Pinned Loading

  1. Simple_Process_REPL Simple_Process_REPL Public

    An Application framework for creating processes with side effects.

    Python 1 2

  2. MyQMK MyQMK Public

    My user space and keymaps for the qmk firmware

    C 3 2

  3. xmonad-setup xmonad-setup Public

    my setup files for xmonad

    Lua 3 3

  4. scad-clj scad-clj Public

    Forked from farrellm/scad-clj

    OpenSCAD DSL in Clojure

    Clojure

  5. plysp plysp Public

    A clojure like lisp written on top of python

    Python 1

  6. Arch-Setup Arch-Setup Public

    Automation of package and configuration repository installation on Arch Linux

    Shell 1 1