Coder Social home page Coder Social logo

abalone's Introduction

Hi there ๐Ÿ‘‹

Iโ€™m just your average beer & coffee drinking software developer and sysadmin in PDX. When I told people I was moving here, nobody was surprised. This may have something to do with the toe shoes. Iโ€™m a Developer Advocate at Puppet, which basically means that I know how to talk to developers outside the company and to developers inside the company and I can help them to be friends with each other. I get to play with all the cool new tools and help others learn how to do it for real.

When I started here, I was in professional services, which meant that I visited exotic places like Denver and Columbus and teach people to use Puppet or help them integrate it into their infrastructure. Now most of my travel is to blab at conferences and such.

  • ๐Ÿ”ญ๐Ÿ“ฝ๐Ÿค” My major project is puppetlabs/showoff, for which I'm always interested in collaboration and help with. I do have a bunch of other smaller projects going, some are pinned below and some can be found in my unholy mess of repositories. Someday I'll clean those up.
  • ๐Ÿ’ป Iโ€™ve been poking at Rust a bit lately, and want to rewrite binford2k/abalone in something closer to the metal.
  • ๐ŸŒŽ Places on the interwebs where I sometimes put words
  • ๐Ÿ“ซ I'm @binford2k in all the other places too.
  • ๐Ÿ˜„ Pronouns: he/him or anything respectful
  • ๐Ÿ›ผ My partner is a founding member of a few roller derby leagues/teams and we're pretty active in that world. So if you've never seen a bout and you want to, hit me up!

abalone's People

Contributors

binford2k avatar josephoaks avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

abalone's Issues

add option to display /etc/issue*

Abalone should give you the option to display /etc/issue or /etc/issue.net before you log in.

ws.send({'data' => File.read('/etc/issue.net').encode(crlf_newline: true)}.to_json)
ws.send({'data' => "\r\n\r\n"}.to_json)

poll for running server

the "start session" overlay should maybe validate whether the server is running and offer a message if not.

Abalone starts with a fixed terminal size assumption

When Abalone starts, it has no insight into how big the terminal is, so it initializes at the standard terminal window size:

@writer.winsize = [24,80]

It would be nice to retrieve the size of the physical hterm viewport on the client and adjust to fit.

bannerfile => 'true' results passes string true to config.yaml

Setting the bannerfile parameter for the abalone class to true or 'true' results in the string 'true' being passed into the :bannerfile: parameter in the config.yaml instead of the expected default. Explicitly specifying a string works as expected.

Sticky sessions

Provide a way for sessions to persist when reloading a page or changing to another page.

starting the session fails silently when websockets are blocked

If a firewall or DPI between the user and the server alters the websocket packets (e.g., degrading them to standard HTTP) then the terminal just silently fails to load. In the js console you see unexpected 200 statuses. It's expecting a 101 Switching Protocols instead.

This indicates that a websocket connection was attempted, but the packets weren't valid, so the server responds with the standard HTML page. The WebSocket() call in js doesn't know how to respond to that and just fails.

Instead, we should detect that, or catch errors, and display an informative error message.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.