|
| 1 | +## Winter 2026 L5 Survey |
| 2 | + |
| 3 | +Thanks for trying out L5! |
| 4 | + |
| 5 | +This is a survey to get initial feedback to help decide next steps for the language library. All questions are optional. When finished, the *Send Survey* button will open up your email client for you to send along your responses. Alternatively, there is also a [Google Forms survey](https://docs.google.com/forms/d/e/1FAIpQLSdhZtiS8NXF4T5nlNtxgrupdH21WxnIspmHZf8uskTTjBB5bw/viewform?usp=header) as well as instructions for browsers without JavaScript. |
| 6 | + |
| 7 | +<div class="form-container"> |
| 8 | + |
| 9 | +<style> |
| 10 | + * { |
| 11 | + box-sizing: border-box; |
| 12 | + margin: 0; |
| 13 | + padding: 0; |
| 14 | + } |
| 15 | + |
| 16 | + .form-container { |
| 17 | + margin: 0 auto; |
| 18 | + background: white; |
| 19 | + padding: 30px; |
| 20 | + border-radius: 8px; |
| 21 | + box-shadow: 0 2px 10px rgba(0,0,0,0.1); |
| 22 | + } |
| 23 | + |
| 24 | + .form-group { |
| 25 | + margin-bottom: 25px; |
| 26 | + } |
| 27 | + |
| 28 | + .form-group label { |
| 29 | + display: block; |
| 30 | + margin-bottom: 8px; |
| 31 | + font-weight: 500; |
| 32 | + color: #555; |
| 33 | + } |
| 34 | + |
| 35 | + .form-group input[type="text"], |
| 36 | + .form-group input[type="email"], |
| 37 | + .form-group textarea { |
| 38 | + width: 100%; |
| 39 | + padding: 10px; |
| 40 | + border: 1px solid #ddd; |
| 41 | + border-radius: 4px; |
| 42 | + font-size: 14px; |
| 43 | + font-family: inherit; |
| 44 | + } |
| 45 | + |
| 46 | + .form-group input[type="text"]:focus, |
| 47 | + .form-group input[type="email"]:focus, |
| 48 | + .form-group textarea:focus { |
| 49 | + outline: none; |
| 50 | + border-color: #4CAF50; |
| 51 | + } |
| 52 | + |
| 53 | + .form-group textarea { |
| 54 | + resize: vertical; |
| 55 | + min-height: 100px; |
| 56 | + } |
| 57 | + |
| 58 | + .checkbox-group { |
| 59 | + margin-bottom: 10px; |
| 60 | + } |
| 61 | + |
| 62 | + .checkbox-group input[type="checkbox"] { |
| 63 | + margin-right: 8px; |
| 64 | + } |
| 65 | + |
| 66 | + .checkbox-group label { |
| 67 | + display: inline; |
| 68 | + font-weight: normal; |
| 69 | + } |
| 70 | + |
| 71 | + .other-input { |
| 72 | + margin-left: 28px; |
| 73 | + margin-top: 5px; |
| 74 | + width: calc(100% - 28px); |
| 75 | + } |
| 76 | + |
| 77 | + button { |
| 78 | + background: #4CAF50; |
| 79 | + color: white; |
| 80 | + padding: 12px 30px; |
| 81 | + border: none; |
| 82 | + border-radius: 4px; |
| 83 | + font-size: 16px; |
| 84 | + cursor: pointer; |
| 85 | + transition: background 0.3s; |
| 86 | + } |
| 87 | + |
| 88 | + button:hover { |
| 89 | + background: #45a049; |
| 90 | + } |
| 91 | + |
| 92 | + .note { |
| 93 | + margin-top: 15px; |
| 94 | + padding: 10px; |
| 95 | + background: #f0f0f0; |
| 96 | + border-radius: 4px; |
| 97 | + font-size: 14px; |
| 98 | + color: #666; |
| 99 | + } |
| 100 | + |
| 101 | + .noscript-warning { |
| 102 | + margin-bottom: 20px; |
| 103 | + padding: 15px; |
| 104 | + background: #fff3cd; |
| 105 | + border: 1px solid #ffc107; |
| 106 | + border-radius: 4px; |
| 107 | + color: #856404; |
| 108 | + } |
| 109 | +</style> |
| 110 | + |
| 111 | +<noscript> |
| 112 | +<div class="noscript-warning"> |
| 113 | +<strong>Note:</strong> The form below requires JavaScript. Alternatively, please <a href="mailto:lee@leetusman.com?subject=L5%20Winter2026%20Survey%20Response">click here to open your email client</a> and answer the following questions: |
| 114 | + |
| 115 | +<ol> |
| 116 | +<li>Name</li> |
| 117 | +<li>How have you tried out L5? (checked out website, checked out code/repo, installed and tried examples, wrote own programs, other)</li> |
| 118 | +<li>What most interests you about L5? (new Processing-like library, Lua syntax, small size, speed, resiliency, other)</li> |
| 119 | +<li>If you bounced off L5 or it doesn't appeal, why not?</li> |
| 120 | +<li>What is L5 missing right now?</li> |
| 121 | +<li>Any other feedback?</li> |
| 122 | +<li>If you'd be potentially interested in contributing (code, bug reports, tutorials, etc), how would you like to contribute?</li> |
| 123 | +<li>Your email address (to stay connected on all things L5)</li> |
| 124 | +</ol> |
| 125 | +</div> |
| 126 | +</noscript> |
| 127 | + |
| 128 | +<form id="surveyForm"> |
| 129 | + <div class="form-group"> |
| 130 | + <label for="name">1. Name</label> |
| 131 | + <input type="text" id="name" name="Name"> |
| 132 | + </div> |
| 133 | + |
| 134 | + <div class="form-group"> |
| 135 | + <label>2. How have you tried out L5?</label> |
| 136 | + <div class="checkbox-group"> |
| 137 | + <input type="checkbox" id="tried1" name="tried" value="Checked out website"> |
| 138 | + <label for="tried1">I checked out the website</label> |
| 139 | + </div> |
| 140 | + <div class="checkbox-group"> |
| 141 | + <input type="checkbox" id="tried2" name="tried" value="Checked out code/repo"> |
| 142 | + <label for="tried2">I checked out the L5.lua code file and/or Github repo</label> |
| 143 | + </div> |
| 144 | + <div class="checkbox-group"> |
| 145 | + <input type="checkbox" id="tried3" name="tried" value="Installed and tried examples"> |
| 146 | + <label for="tried3">I installed Love2d, downloaded L5 and tried out some examples</label> |
| 147 | + </div> |
| 148 | + <div class="checkbox-group"> |
| 149 | + <input type="checkbox" id="tried4" name="tried" value="Wrote own programs"> |
| 150 | + <label for="tried4">I wrote my own program(s)</label> |
| 151 | + </div> |
| 152 | + <div class="checkbox-group"> |
| 153 | + <input type="checkbox" id="tried5" name="tried" value="Other"> |
| 154 | + <label for="tried5">Other:</label> |
| 155 | + </div> |
| 156 | + <input type="text" class="other-input" id="triedOther" placeholder="Please specify..."> |
| 157 | + </div> |
| 158 | + |
| 159 | + <div class="form-group"> |
| 160 | + <label>3. What most interests you about L5?</label> |
| 161 | + <div class="checkbox-group"> |
| 162 | + <input type="checkbox" id="interest1" name="interest" value="New Processing-like library"> |
| 163 | + <label for="interest1">Any new Processing-like library interests me</label> |
| 164 | + </div> |
| 165 | + <div class="checkbox-group"> |
| 166 | + <input type="checkbox" id="interest2" name="interest" value="Lua syntax"> |
| 167 | + <label for="interest2">Lua language's easy syntax</label> |
| 168 | + </div> |
| 169 | + <div class="checkbox-group"> |
| 170 | + <input type="checkbox" id="interest3" name="interest" value="Small size"> |
| 171 | + <label for="interest3">L5's small size and ability to work on older or underpowered machines</label> |
| 172 | + </div> |
| 173 | + <div class="checkbox-group"> |
| 174 | + <input type="checkbox" id="interest4" name="interest" value="Speed"> |
| 175 | + <label for="interest4">Speed!</label> |
| 176 | + </div> |
| 177 | + <div class="checkbox-group"> |
| 178 | + <input type="checkbox" id="interest5" name="interest" value="Resiliency"> |
| 179 | + <label for="interest5">Resiliency of the underlying system (Lua extremely slow to change, well-documented, easy to work with)</label> |
| 180 | + </div> |
| 181 | + <div class="checkbox-group"> |
| 182 | + <input type="checkbox" id="interest6" name="interest" value="Other"> |
| 183 | + <label for="interest6">Other:</label> |
| 184 | + </div> |
| 185 | + <input type="text" class="other-input" id="interestOther" placeholder="Please specify..."> |
| 186 | + </div> |
| 187 | + |
| 188 | + <div class="form-group"> |
| 189 | + <label for="bounced">4. If you bounced off L5 or it doesn't appeal, why not?</label> |
| 190 | + <textarea id="bounced" name="bounced" rows="4"></textarea> |
| 191 | + </div> |
| 192 | + |
| 193 | + <div class="form-group"> |
| 194 | + <label for="missing">5. What is L5 missing right now?</label> |
| 195 | + <textarea id="missing" name="missing" rows="4"></textarea> |
| 196 | + </div> |
| 197 | + |
| 198 | + <div class="form-group"> |
| 199 | + <label for="feedback">6. Any other feedback?</label> |
| 200 | + <textarea id="feedback" name="feedback" rows="4"></textarea> |
| 201 | + </div> |
| 202 | + |
| 203 | + <div class="form-group"> |
| 204 | + <label for="contribute">7. If you'd be potentially interested in contributing (code, bug reports, tutorials, etc), how would you like to contribute?</label> |
| 205 | + <textarea id="contribute" name="contribute" rows="4"></textarea> |
| 206 | + </div> |
| 207 | + |
| 208 | + <div class="form-group"> |
| 209 | + <label for="email">8. Your email address (to stay connected on all things L5)</label> |
| 210 | + <input type="email" id="email" name="email"> |
| 211 | + </div> |
| 212 | + |
| 213 | + <button type="submit">Send Survey</button> |
| 214 | + |
| 215 | + <div class="note"> |
| 216 | + Note: This will open your default email client to send your responses. |
| 217 | + </div> |
| 218 | +</form> |
| 219 | + |
| 220 | +<script> |
| 221 | +document.getElementById('surveyForm').addEventListener('submit', function(e) { |
| 222 | + e.preventDefault(); |
| 223 | + |
| 224 | + var name = document.getElementById('name').value || 'Anonymous'; |
| 225 | + |
| 226 | + // Get checked items for "How tried" |
| 227 | + var triedCheckboxes = document.querySelectorAll('input[name="tried"]:checked'); |
| 228 | + var triedChecked = []; |
| 229 | + for (var i = 0; i < triedCheckboxes.length; i++) { |
| 230 | + triedChecked.push(triedCheckboxes[i].value); |
| 231 | + } |
| 232 | + var triedOther = document.getElementById('triedOther').value; |
| 233 | + if (triedOther) { |
| 234 | + triedChecked.push('Other: ' + triedOther); |
| 235 | + } |
| 236 | + var tried = triedChecked.length > 0 ? triedChecked.join(', ') : 'N/A'; |
| 237 | + |
| 238 | + // Get checked items for "What interests" |
| 239 | + var interestCheckboxes = document.querySelectorAll('input[name="interest"]:checked'); |
| 240 | + var interestChecked = []; |
| 241 | + for (var j = 0; j < interestCheckboxes.length; j++) { |
| 242 | + interestChecked.push(interestCheckboxes[j].value); |
| 243 | + } |
| 244 | + var interestOther = document.getElementById('interestOther').value; |
| 245 | + if (interestOther) { |
| 246 | + interestChecked.push('Other: ' + interestOther); |
| 247 | + } |
| 248 | + var interest = interestChecked.length > 0 ? interestChecked.join(', ') : 'N/A'; |
| 249 | + |
| 250 | + var bounced = document.getElementById('bounced').value || 'N/A'; |
| 251 | + var missing = document.getElementById('missing').value || 'N/A'; |
| 252 | + var feedback = document.getElementById('feedback').value || 'N/A'; |
| 253 | + var contribute = document.getElementById('contribute').value || 'N/A'; |
| 254 | + var email = document.getElementById('email').value || 'N/A'; |
| 255 | + |
| 256 | + // Build email |
| 257 | + var subject = encodeURIComponent('L5 Survey Response - Winter 2026'); |
| 258 | + var body = encodeURIComponent( |
| 259 | + 'L5 Survey Response\n\n' + |
| 260 | + '1. Name: ' + name + '\n\n' + |
| 261 | + '2. How have you tried out L5?\n' + tried + '\n\n' + |
| 262 | + '3. What most interests you about L5?\n' + interest + '\n\n' + |
| 263 | + '4. If you bounced off L5 or it doesn\'t appeal, why not?\n' + bounced + '\n\n' + |
| 264 | + '5. What is L5 missing right now?\n' + missing + '\n\n' + |
| 265 | + '6. Any other feedback?\n' + feedback + '\n\n' + |
| 266 | + '7. How would you like to contribute?\n' + contribute + '\n\n' + |
| 267 | + '8. Email address:\n' + email |
| 268 | + ); |
| 269 | + |
| 270 | + window.location.href = 'mailto:lee@leetusman.com?subject=' + subject + '&body=' + body; |
| 271 | +}); |
| 272 | +</script> |
| 273 | + |
| 274 | +</div> |
0 commit comments