Skip to content

Instantly share code, notes, and snippets.

View jeffschulthies's full-sized avatar
🚀
👨🏾‍💻

Jeff Schulthies jeffschulthies

🚀
👨🏾‍💻
View GitHub Profile
@RezzedUp
RezzedUp / Javalin-in-Spigot-or-Bungee.md
Last active February 29, 2024 19:32
Guide - Using Javalin in a Spigot or Bungeecord Plugin

Using Javalin in a Spigot or Bungeecord Plugin

A common problem when attempting to use Javalin in a Spigot or Bungeecord plugin is the following:

[ERROR] java.lang.RuntimeException: javax.servlet.ServletException: java.lang.RuntimeException: Unable to load org.eclipse.jetty.websocket.server.WebSocketServerFactory
        ...
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.websocket.server.WebSocketServerFactory

This is incredibly frustrating because as far as you can tell, you've included all of Javalin's dependencies properly. In fact, you're probably reading this guide right now because you yourself fell victim to these pesky errors. Don't get too fraught, the solution is right under your nose!

@psi-4ward
psi-4ward / customize-grml.md
Last active December 2, 2023 06:41
Customize Grml LiveCD (remaster)

Customize Grml LiveCD (remaster)

This little bash script helps you to build your own customized grml.iso

Features

  • Include your .ssh/*.pub files into authorized_keys
  • Inject Grml Cheats
  • Auto download all necessary files (the ISO and grml2usb)
@jcasimir
jcasimir / sessions_and_conversations.markdown
Created September 11, 2011 23:07
Sessions and Conversations in Rails 3

Sessions and Conversations

HTTP is a stateless protocol. Sessions allow us to chain multiple requests together into a conversation between client and server.

Sessions should be an option of last resort. If there's no where else that the data can possibly go to achieve the desired functionality, only then should it be stored in the session. Sessions can be vulnerable to security threats from third parties, malicious users, and can cause scaling problems.

That doesn't mean we can't use sessions, but we should only use them where necessary.

Adding, Accessing, and Removing Data