Git Product home page Git Product logo

ladderly-3's Introduction

hey! ๐Ÿ‘‹ my name is John. nice to meet u!! ๐Ÿ˜„๐Ÿฅฐ

  • โญ๐Ÿ” I'm a SWE and social influencer passionate about teaching others to code! Check out my socials here. Use this template to make your own social site!
  • ๐Ÿ–ฅ๏ธโŒจ๏ธ I love teaching people to code! Learn with me through Ladderly and my educational TikTok page! ๐Ÿ˜„
  • ๐Ÿ’ผ๐Ÿ” Check out my portfolio here. Use my portfolio as a template to make your own!
  • ๐Ÿ”ฎ๐Ÿง™ Get your fortune told using my current recreational project called Futurecaster
  • ๐Ÿ“ซ๐Ÿ’ฌ Twitter is an easy way to reach out to me.

ladderly-3's People

Contributors

jezla avatar paulageronimo avatar vandivier avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

ladderly-3's Issues

upsert in seed script + prisma 5

feel free to split into two tickets if needed

prisma has upsert, i'm struggling to think of why we shouldn't use it

we can also possibly update to prisma 5. idk any major benefit tho

would prisma 5 let me do the "Unique except when null" operation? i could use that for backupEmail and stripeEmail user fields

customize content processing

we have many variants per abstract content (post rect concern, see #22 )

there are a multiple ways to process this:

  1. shallow variant tracing (default): we consider the content under an abstract to be duplicative: the algorithm only looks at the top-performing variant under an abstract
  2. allowlisted deep tracing: a TIMC can manually select one or more variants under an abstract, and the abstract itself, for inclusion or exclusion. Selection is respected, and when no selection is made we fall back to shallow variant tracing
  3. full variant tracing: the processing algorithm looks at every variant and does internal deduplication
  4. full tracing: the processing algorithm looks at every variant and the abstract public data

about page

public-facing page and also an easy context setter for gpt-4 with browsing

Session Service Suggestions

An expert session can be used for anything that you and your assigned expert agree to do. This list is meant to give you an idea of some useful activities that are common, not to limit possible activities.

  1. Creating or executing a personalized educational plan
  2. Job search or general career advice
  3. Technical assistance on a specific project
  4. Resume Review
  5. Portfolio Review
  6. LinkedIn Review
  7. Practice Interviews

teachable import

teachable users have a few properties we need to support:

  1. first name, last name
  2. total purchases (maybe create a transaction entity? or just a number for now like teachable_purchase_total)
  3. marketing eligible (includes YES for leads)

youtube transcriber

later we can vectorize the transcripts (paid tier) and/or send them to claude (free tier)

add stylelint

suppose i have a malformed tailwind rule like:
<h2 className="bg-red">#LearnToCode</h2>

when i meant to write:
<h2 className="bg-red-500">#LearnToCode</h2>

let's add stylelint to help catch stuff like this. below is a blurb from GPT-4:

Linting: You could use a CSS linter with Tailwind CSS support, such as [stylelint](https://stylelint.io/) with [stylelint-config-recommended](https://github.com/stylelint/stylelint-config-recommended) and [stylelint-config-tailwind](https://github.com/francoismassart/stylelint-config-tailwind) configurations. However, this would involve some setup and configuration, and the error messages might not be as precise as "did you mean bg-red-500?".

Custom Scripts: For a more specific solution like what you've described, you could potentially write a custom script that checks your code for incorrect Tailwind CSS class usage. However, this would likely be complex and time-consuming to maintain.

discord merge bot action thingy

i want a bot to post to discord when:

  1. a new issue is opened, commented on, or upvoted
  2. a new pr is created, pushed, commented on, or merged

settingform build warning

  • warn Compiled with warnings

./src/settings/components/SettingForm.tsx
Attempted import error: 'tierValidator' is not exported from '../mutations/updateSettingMutation' (imported as 'tierValidator').

Import trace for requested module:
./src/settings/components/SettingForm.tsx

better checklist items

expand checklistItems to have a property like detailedExplanation or detailText or smth that further explains why it's important

i may consider using a question mark icon that explains on hover, an accordion component, or similar.
we could also just use a nested list of items

collapse standard checklist

"Consider a Premium Account" and "Consider Booking an Expert Session" should just be items on the standard checklist

blog learning strategies + cognitive load

we already want to improve learning through spaced repetition: Vandivier/ladderly-slides#26

we are already blogging some greatmaking curriculum properties:
#41

this article will capture all other design features of the ladderly curriculum, which can then be referenced from an "About Page" #42

some thought leaders in learning strategies indicate that cognitive loading (particularly germane cog load) is more effective than active recall:

  1. https://www.youtube.com/watch?v=5PTkcGMrZ4I
  2. https://www.youtube.com/watch?v=5cbQudbxHi4
  3. https://www.youtube.com/watch?v=WbUOY9ioIqw

two question from a ladderly curriculum design POV:

  1. is cognitive load at odds w spaced repetition and active recall? or, like exercising at the gym, can leverage space (optimal resting) with high load? so they actually work together (area under the curve load / total load / time under tension, or "maximum effort rep" exercise? what about the equivalent of training to failure for cognitive work? what about Caplan's objection that learning is nothing like exercising? blog it!)
  2. how do we apply this for learning to code in particular? remember that maximizing germaine cognitive load as a strategy is moderated by the cognitive intensity of the underlying subject (calculus vs biology in the comparison from Darren Chai, MD)

applied tip: "pretend that recording devices don't exist"

ideally, also incorporate some other features:

  1. deliberate learning
  2. project-based learning and learning by doing
  3. social learning
  4. emotional learning
  5. Sufficiency Learning (as opposed to Mastery Learning
  6. Low-Stakes Learning (as opposed to high-stakes learning; encourage learning-by-failure) The Super Mario effect
  7. evidence-based learning (if there isn't an attached credential or measurable outcome; in addition, make it a credential that connects meaningfully to outcomes of intersted; for us, minimal bar is LinkedIn Skill Certs, but there are higher optional things too)
  8. [optional for juniors, but encouraged; required for seniors] learning by teaching
  9. [optional, experimental] learning in public (a special case of social learning and learning by teaching or co-learning integrated with the achievement of a substantial social following and demonstrated thought leadership in the field of interest)
  10. MAYBE: mastery learning
  11. MAYBE: cognitive loading
  12. MAYBE: active recall
  13. spaced repetition
  14. [MAYBE, experimental]: training to "cognitive failure" actually this seems like a bad idea bc isn't that contra super mario effect?

Settings page v3

User doesn't need to email me to change subscription they can update on the form

Also alter email settings

Depends on the teachable load in

new modules epic

  1. search
  2. git and markdown basics
  3. non-interactive-caterpillar (row/col mobile switch; https://codepen.io/lukasoe/pen/egQKzO)
  4. interactive-caterpillar
  5. prompt engineering crash course
  6. vanilla blog + deployed + trial by fire
  7. next-blog
  8. weird case, chat a bit about legacy stuff caterpillars round 2: deploy your caterpillars AND make a CSR, script-injected React caterpillar app
  9. next-portfolio
  10. next-social-home
  11. capstone
  12. job search
  13. optional: advanced markdown

searching module:
general priority in 2023+:

  1. LLM Search
  2. Google Search
  3. Well-Known Search

boolean search (for tech issues and for the job search; indeed advanced search)
google advanced search (eg site operator isn't a boolen search operator)
LLMs: claude for strategy, ChatGPT (rec gpt-4) for code and technical ops (eg a CLI tool isn't exacty code but it is tech ops; anything where a syntax error could technically fail a process, in contrast to reading where if there's an awkward punction or word choice here and there you can still get the point (side note if Claude does word smth strangely and you arent getting the point, feel free to switch over to GPT or fall back to legacy or well-known sources
social resource search + etiquette; use discord
well-known sources like official docs per error (if you can find source), mozilla, stack overflow, css tricks, w3 schools, mosh (drop yours in the chat)

for now just talk to the LLM like you are chatting with a human. that will be enough to get you through Basic User Interactions with JavaScript (pre-intern level javascript). then, we will have a Prompt Engineering module for more advanced work

result evaluation:

  1. look for mature and stable results, not alpha, beta, or experimental features
  2. look for standard and best practices
  3. rule of thumb: 2-5 year practices
  4. avoid legacy patterns, ie obsolete, deprecated, very old
  5. look for results supported by multiple sources including trusted and official sources
  6. for libraries, prefer highly used and up-trending libraries; prefer open source; look at the issue/star ratio

git and markdown basics module:
5 basic markdown techniques:

  1. headings
  2. body copy (plain, bold, italics)
  3. links
  4. lists
  5. images

set up a repo, edit README in github GUI,
remember! if you have any trouble at all, use search...that's why it was first...and specifically, ChatGPT can easily solve git cli concerns in nearly all cases
Why do this git module before coding? so you can get demonstrated experience in your portfolio that proves your start date...otherwise a skeptic could treat u as sus / heresay. demonstrate it! it also builds the habit so that by the time you start your job search you will legit be comfortable with git and github, and have a portfolio with a high-quality README, which will separate you from the pack

later there's an advanced markdown module to make your readme even cooler

public and private mentorship notes

  1. session notes can be submitted one or zero times by each participant
  2. learners can share notes with others on a case-by-case basis; main sharing use case is for a learner to provide historical context to a new mentor...but then maybe the learner can do that on their own without sharing historical meeting notes?

minor style: top nav height

when i nav between home, login, and signup pages, the height shifts slightly

i think it's bc of the home page using strong font, not sure tho

full site periodic backups

supabase might already do this? not sure

if they don't, then i need to implement that

every 48 hrs ish should be fine OR between releases (the idea is that a new release could break db, so i need to backup site before db-breaking migrations)

repeated OCR-like process with deduplication

we want to get the text off of the social screens and put it in the PIM blob

default snap every 2-5 seconds, max 12 iterations, but allow per-content customization: a TIMC can define "snap points" on the content and the system will just use those

tier features

from convo w gpt-4 plus a brain dump:

Thank you for the clarifications. Here's the revised list of benefits for each tier in Ladderly, taking into account your answers:

**Forever Free Tier**
1. Open Source Curriculum

**Pay What You Want Tier (as little as $1/mo)**
- Current benefits:
    1. Access to the "advanced checklist" which includes 10 additional items not on the basic checklist and a complimentary 1:1 session.
    2. Ad-free experience.
    3. Priority communication and meeting scheduling.
    4. Limited time offer: complimentary 30-minute session and 50% off all additional sessions (subject to availability and limited time offer).
    5. Priority consideration for Request for Comments (RFCs) - subscribers have an influence on the development roadmap.
    6. Discounts on all merchandise from the Coding Life Store, Ladderly IRL event tickets, and 1:1 sessions.

**Premium Tier ($30/mo + optional tips)**
- Current benefits:
    1. All benefits of the "Pay What You Want" tier.
    2. Free access to all Ladderly In Real Life (IRL) events.
    3. Accrue free session time and receive limited-edition seasonal merchandise.
    4. Your subscription helps keep the cost extremely low ("pay what you want") for others.
    5. Greater influence on the development roadmap.
    6. Recognition through a banner on the website, social media shout-outs, and mentions on Ladderly GitHub repository README files.
- Future benefits:
    7. No ads for all if the community subscription bounty is met.
    8. Access to a "Ladderly chatbot".
    9. Transferable session time coupons at a higher-paid tier (30+, get a free 30-minute session every quarter).

**A La Carte Options**
1. 30 or 60-minute session.
2. Ladderly IRL event tickets.
3. Purchase a certification a la carte, but note that you get a free attempt at each exam once per month if you are subscribed to any tier.

abstract content, variant, and PIM entities

after we migrate from rect (#22 )

let's enhance the rect entities to include source, variant, and PIM concepts.

related #34

note: abstract content is an aggregator of variants: it is not published anywhere itself. variants are published over time and across channels. abstract content can have notes on it though, and we can also use it as a way to link related contents or even related abstract contents ("similar ideas" - manually identified as opposed to vector identification)

abstract content has title and public notes...so technically it could be possible to consume these by an LLM with no public variant consumption

seller.json

google says:

We encourage you to publish your seller information in the Google sellers.json file. Visit the account settings page to review your current visibility status.

agency services

  1. Website Development
  2. Social Media Management
  3. SEO or Content Service

multisearch

this can be a premium feature

basic users can access 1 or 2 kinds of search but premium users can access 3 or 4, among:

  1. Text Search: Use GitHub, Google, and other tools to search the Ladderly site, repo, and curriculum files specifically. Also good ol' cmd+F on the curriculum page...blog this, so multisearch depends on the #27 feature
  2. Similarity Search using pgvector
  3. Material Search: Text and Similarity versions. in this form of advanced search, text and similarity search are applied to source material and proprietary intermediary material (PIM) rather than simply to the public inputs and outputs. see #35

do we want an outputs-only repo? or can we search just fine with the outputs being inside the ladderly-slides files+folders?

anon sessions

like interviewing.io does, students and teachers alike should be able to sign up for a session anonymously, then choose to unmask afterwards if they like

comments in PIM

currently, PIM has admin notes where a TAMICC (teacher, author, mentor, influencer, coach, or content creator) can call out any important items on a source item that are not caught by AI, which would include notes from the comments

we can automate some of that by automatically capturing comments in the PIM raw text blob. further, we could run an LLM over the comments to consolidate and automatically pick out themes and tags for the PIM

for efficiency, we could also apply some threshold or logic to the comments like most liked or most interacted comments only

next step: sign up

"Recommended Next Steps:" should say "sign up now" or smth if ur not logged in instead of taking ppl to the checklist page and saying hey u can't see that actually lol

Settings page v2

You don't alter subscription level
Text tells user to email admin to cancel subscription

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.