SEP vs CS

There is a lot of overlap between Software Engineering and Computer Science. Generally speaking, science focuses on understanding the world in the present, while engineering focuses on creating for the future. Many of our graduates study Computer Science in college, and then become Software Engineers.

Skills

You will learn many tools and languages in SEP. But the point of this program is actually not to learn Github or Javascript, or even to be a programmer. The point of SEP is to equip you with a strong set of skills that will be useful anywhere.

  • Collaboration: self-advocacy (asking for help), give/take within pair programming.
  • Communication: articulating ideas to your partner, writing in your portfolio, public speaking in presentations.
  • Problem decomposition: breaking a task down into smaller pieces.
  • Logical reasoning: if P then Q, otherwise R.
  • Debugging: reading errors, tinkering, talking through the problem (RDD).
  • How to learn: technology changes fast. Some of the tools and languages you learn in SEP will probably become outdated. We often say #loyo, which means "Learn On Your Own."
  • How to Google: what to search, how to filter, techniques like +F.
  • How to read: documentation and articles are very different from novels.
  • Time management: prioritizing and scheduling tasks, working towards an MVP, etc.
  • Growth mindset: patience, perseverance, and the courage to ask for help.
  • Embracing failure: rather than being discouraged by a bug or an error message, we love mistakes because they help us learn.
  • Leadership: delegating group tasks, supporting team members, assuming responsibility.
  • Organization: file management, hierarchy and relationships, whiteboarding your ideas.
  • Attention to detail: spelling things correctly, adhering to syntax rules, etc.
  • Consideration: we are building things that are meant to be used by other people. It is important to consider the impact of what we create.
  • Creativity: how to think outside the box, be innovative, and create the future.

Honor Code

Adapted from Edhesive, CS50, and freeCodeCamp

The HSTAT SEP Honor Code is a declaration by the entire community to strive for excellence in scholarship and in character. The Honor Code establishes trust among students, teachers, and staff that enriches collaboration. It deepens bonds between students and encourages a sense of personal responsibility that extends beyond the classroom.

  • This course’s philosophy on academic honesty is best stated as "be reasonable." The course recognizes that interactions with classmates and others can facilitate mastery of the course’s material. However, there remains a line between enlisting the help of another and submitting the work of another. This policy characterizes both sides of that line.
  • The essence of all work that you submit to this course must be your own. Collaboration on homework is limited to the extent that you may ask classmates and others for help so long as that help does not reduce to another doing your work for you. Generally speaking, when asking for help, you may show your work to others, but you may not view theirs. Collaboration on quizzes is not permitted at all.
  • Below are rules of thumb that characterize acts that the course considers reasonable and not reasonable. If in doubt as to whether some act is reasonable, ask your teacher.

Reasonable

  • Discussing the course’s material with others in order to understand it better.
  • Helping a classmate identify a bug in his or her code at by viewing or running his or her code, even on your own computer.
  • Incorporating a few lines of code that you find online or elsewhere into your own code, provided that those lines are not themselves solutions to assignments and that you cite the lines' origins.
  • Sharing some of your broken code on Slack, so that a classmate/teacher might help you identify and fix a bug.
  • Turning to the web or elsewhere for instruction beyond the course’s own, for references, and for solutions to technical difficulties, but not for outright solutions to homework or projects.
  • Whiteboarding solutions to problem sets with others using diagrams or pseudocode but not actual code.

Not Reasonable

  • Accessing a solution to some problem prior to submitting your own.
  • Asking a classmate to see his or her solution to a problem before submitting your own.
  • Failing to cite (as with comments) the origins of code or techniques that you discover outside of the course’s own lessons and integrate into your own work.
  • Giving or showing to a classmate a solution to a problem when it is he or she, and not you, who is struggling to solve it.
  • Looking at another individual’s work during a or quiz.
  • Using any other resources during a quiz that the teacher did not explicitly say you could use.
  • Paying or offering to pay an individual for work that you submit as (part of) your own.
  • Providing or making available solutions to assignments to individuals who might take this course in the future.
  • Searching for or soliciting outright solutions to problem sets online or elsewhere.
  • Splitting a homework's workload with another individual and combining your work.

Agreement

  • I understand that plagiarism means copying someone else’s work and presenting the work as if it were my own, without clearly attributing the original author.
  • I understand that plagiarism is an act of intellectual dishonesty, and that people usually get kicked out of college or fired from their jobs if they get caught plagiarizing.
  • I will complete all work associated with this course with my own work. I will not submit the work of any other person.
  • I pledge to not plagiarize any of my SEP work. I understand that HSTAT teachers and administration will be reviewing my work for plagiarism.
  • I will not let anyone else use my username and/or password.
  • I will not engage in any activity that would dishonestly improve my results, or improve or hurt the results of others.
  • I will act as a steward of the Honor Code and encourage others to do so as well.

Expectations

  • Outside Involvement Opportunities
    • HSTAT SEP students are required to participate in two non-HSTAT but STEM-related opportunities before to graduation.
    • To prevent students from procrastinating, at least one out of the two opportunities must be completed before to senior year.
    • List of Opportunities
    • After completing an opportunity, please complete this survey.
  • Expos & Showcase
    • At the end of the year, students present in the Expo, attend the Showcase, and present in the Showcase if selected.
    • See more details below.

Expos & Showcase

The Expos and Showcase take place in the Spring to show off work that students have made throughout the year.

  • Expos
    • All students present their work informally in the cafeteria in a "science fair"-type setting.
    • Dress is casual: you can wear comfortable clothes.
    • All staff, students, and families are welcome.
    • Judges (alumni and corporate partners) will also be present to decide the finalists: the top 3 projects from each grade.
  • Showcase
    • Based on the judges' results from the Expos, students of the top 12 projects (3 from each grade) will formally present their work in the auditorium.
    • For finalists, dress is professionally; wear your nicest clothes. For everyone else, you can wear casual clothes.
    • All SEP students will attend. About 100 other students, all staff, families of finalists, alumni, and corporate partners will also be invited.
    • All finalists will receive a prize for presenting in the Showcase.

Slack

Starting in 10th grade, SEP students begin using Slack.

Slack is an awesome communication tool used by many companies (we've seen it open on screens during every field trip we've been on). It's basically a bunch of private customizable group chats (called “channels”), but with way more functionality (tags, search, code snippets, etc). It is very helpful for collaboration and debugging (and general announcements/chat), and much more efficient/streamlined than email. There is a mobile app (with plenty of customizable push-notification settings) as well as a desktop app (and it also works in the browser). It is a great communication tool for both student-to-student and student-to-teacher conversations. It is also a good experience for students because it could possibly be used during college/careers. Students are added to the following channels:

PUBLIC channels (open to EVERYONE in the HSTAT SEP group) for the following:

  • General: announcements for Expos/Showcase, good articles to read, reminders, etc. Anything related to SEP. All 10th/11th/12-grade/graduate students & teachers are here.
  • Random: non-SEP-related stuff: any sort of chat. Same group of people as above.
  • Opportunities: since students are required to complete two opportunities prior to graduation, this is where students will get notified about new opportunities. Same group of people as above.
  • webdesign: this is one of the topics in SEP10 (sub-topics include HTML, CSS, and Responsiveness).
  • github: this is one of the topics in SEP10 (sub-topics include command line, git, and github).
  • freedomproject: this is a topic that goes through all of SEP10. All students are in this channel, as the Freedom Project is implemented in every grade.
  • MORE! (as students enter the 11th and 12th grade).

A PRIVATE channel just for students in the same cohort/grade (and their teachers):

  • 20##: This cohort channel will be good for grade-specific questions unrelated to code. It will be mostly student-to-student conversations, but teacher(s) will have access to this channel so that they can jump in as they see fit (they can also use it as homework/project reminders and other announcements). This will also be a great way for students to keep in touch with each other after they graduate and keep connections to each other beyond emailing the few people they remember from high school.

  • Students can also direct message their teacher (or anyone) on Slack with specific questions. But if you think someone else might have the same question, make sure to post it in the proper channel (that way they can see the answer)!

    Students are added to Slack via their HSTAT email address (for this reason, students should be checking their email!). Every student's username should be the same as their HSTAT email address, just without the “@hstat.org” (i.e. johnd1234). Slack can be used on smartphones and/or the computer.

    • For smartphones, there is a native app for iOS and Android devices.
    • For the computer, students have two options:
      • Install the native app by visiting slack.com/downloads
      • Use the web app by visiting hstatsep.slack.com (this is a good link to memorize for scenarios where it is appropriate to use Slack during class).

    Slack Tips

    Remember, there are dozens of people in each channel. If Person A has a question, they want everyone to get a notification (otherwise they might not see it). Person B might answer Person A’s question, and they may have a conversation back-and-forth about it. The benefits of posting in a channel (rather than directly messaging someone) is 1) to cast a wider net of people who can help you, and 2) that Person C might have the same question as Person A did. They can go back later and see all of the help that was given between Person A and Person B. However, it would probably be annoying to everyone else in the channel if every single message triggered a notification. For that reason, there are specific alert triggers:

    • The default triggers for notifications are:
      • Direct messages (direct person-to-person messages)
      • Using @channel in a message
    • The default Do Not Disturb time is 10pm-8am. People won’t get notifications during this time.
    • If you would like to change any of these defaults for yourself, you can change them in your app settings. But you cannot change the default for others. So if you’re posting a question that you want others to see, make sure you use @channel and you post between 8:01am-9:59pm

    As a recap, here is when you should/shouldn’t use @channel:

    • USE @channel
      • Asking a question
      • Reminding classmates about an assignment deadline
      • Posting an opportunity
    • DON'T USE @channel
      • Answering a question; instead use @username
      • Random chat

    If you have a smartphone, you’re going to want to install the Slack app on your phone. This is the best way to ensure you see the notifications. But often times your reply requires being at a computer (typing a long message, needing to pull up your own program, etc). Refer to the links above for using Slack on a computer.


    Which channel do I post in?

    • Question/comment about code → github or webdesign (depends on current topic)
      • There are upperclassmen in these channels who can answer your questions as well
    • Question/comment/reminder about a due date, field trip, or something specific to 10th grade → 20##
    • Question/comment/announcement about hackathon, summer program, etc → opportunities
    • Question/comment/joke/meme about non-SEP-related stuff → random

    How to respond

    • Threads are a great way to keep conversations organized within a channel.
      • On your phone: tap and hold the message to see 💬 Reply in Thread
      • Everywhere else: hover over a message to see 💬 Reply in Thread
    • Reaction emojis are a great way to give feedback, take polls, etc.
      • Type :snaps: to use our custom emoji!

    Styling tips

    • To make text appear bold: wrap it with asterisks: due *tomorrow* → due tomorrow
    • To make text appear italicized: wrap it with underscores: leaving _right now_ → leaving right now
    • To make text appear as code: wrap it with backticks (the key above tab) `function` → function
      • ^That^ only works for single lines of code; wrap multiple lines of code with triple backticks
      • Example:
      • ```div {
            color: red;
            }```
                                
      • ...becomes...
      • div {
            color: red;
        }
                                

    MVP

    Stands for Minimum Viable Product

    Minimum = the least

    Product = what you make

    Viable = it works

    Essentially, it's the least you can make that works. Here's a diagram to help understand the concept.

    The top part of the image shows one way to build a car: work towards the end goal piece by piece, work on each piece until it is perfect, and then put the pieces together at the end. The problem with this approach is that the transportation device is completely unusable until the last step.

    Unfortunately, this is often what happens in students' projects. A student has a vision for their end product, and starts working on it piece by piece. For example, when working towards a website, a student will spend too much time working on the navigation bar until it is perfect. However, if they run out of time, they have a FANTASTIC looking navigation bar that it NOT functional because there is no more website for the buttons to link to.

    The bottom part of the image shows a better approaching to building a car. If the goal of a car is to transport someone from Point A to Point B, consider the MVP: the least you can make that works -- in this case, a skateboard! Sometimes it takes longer than you would think to build a car, and so a skateboard isn't as flashy, but at least it gets the job done.

    Similarly for students, the MVP approach is much more realistic when considering deadlines. Though you may dream of a "car," what is the "skateboard?" What is the least you can make that works? In the example of the student building a website, perhaps they spend less time making the navigation bar have the exact size/spacing/colors, and just get it to work -- meaning, also spending time on other parts of the website that the navigation bar can then lead to! Once a simple, functional website is built (like the skateboard), then they can add on to it (like adding a handlebar to a skateboard, making it a scooter) and work towards the "car" vision as time allows.

    A good practice is to set an "MVP" deadline before the final deadline. This is a good practice to take with you after high school, so that you are not procrastinating and trying to make a usable project/essay at the last minute. Instead, you are creating an MVP in advance of the due date, and then giving yourself time to make it perfect.

    The great thing about the MVP workflow is that it applies to any project, even outside of code: essays, applying to college, etc!

    Here's a great article about tips for setting up your MVP.

    Here's another one.

    Portfolio

    The purpose of the portfolio is to display a student's best work.

    • SEP Projects
    • Projects from other courses
    • Extracurricular achievements
    • Leadership roles
    • etc.

    URLs:

    Portfolio Template

    Video

    Stand-ups

    A stand-up meeting is usually conducted in workplaces each morning to ensure that a team is checking in regularly about their progress.

    As a part of HSTAT SEP, we will sometimes conduct stand-ups (either whole-class or small groups) to allow you to do the same. They usually consist of answering the following questions:

    1. What have you completed since the last stand-up? (or during this project)
    2. What are you planning to work on next?
    3. What, if any, problems are you facing

    Doing stand-ups helps:

    • Ensure that you are managing your time efficiently
    • Let your peers know about your progress, especially if they can help you
    • Practice public speaking

    Design

    A few basic principles:

    • Use a minimal color scheme (2-3 colors). Black, white, and gray go with pretty much anything.
    • Keep your design simple. Often times less is more.
    • Make sure fonts are readable (not too small/curly) and consistent.
    • Make sure spacing/alignment is consistent.

    Other resources:

    Images

    Field Trips

    The goal is that each grade gets to go on at least one field trip each year. In the past, we've visited places such as Google, Deloitte, New Lab, Stash, and the NYC CS Fair. We also conduct in-house workshops with companies such as PENCIL and Deloitte.

    In order to best prepare for any field trip, please review vocabulary.

    PENCIL & Deloitte Partnership

    • PENCIL is an organization that partners schools with companies.
    • Deloitte is a VERY large company that specializes in giving advice to other companies about handling their finances.
    • Thanks to PENCIL, we have partnered with Deloitte. We often go on field trips to their office at 30 Rock, as well as get in-house workshops. It is a very special partnership!

    Github

    Github Review Playlist

    Making a website with Github Pages

    • github.com > New Repository
      • Name: all-lowercase-no-spaces
      • Add a README file
      • Create an index.html file
      • Starter code can be found at github.com/hstatsep/web
    • Repo settings > Pages
      • Change source to main (or master)
      • Press Save
      • IMPORTANT: the site takes some time to "deploy." It could take up to 10 minutes.
    • URL: username.github.io/reponame
      • This will automatically load index.html
      • If you want to preview a different file, the URL is username.github.io/reponame/filename.html

    Github Classroom Assignments

    Rubber Duck Debugging

    Often times when we get stuck programming, we ask for help. In the process of doing so, we explain our problem out loud, and frequently the solution comes to us in the middle of explaining. So instead of explaining to a person, try talking to a rubber duck first.

    Mr. Mueller's talk on RDD here

    Engineering Design Process

    1. Define the problem
    2. Research the problem
    3. Brainstorm possible solutions
    4. Plan the most promising solution
    5. Create a prototype
    6. Test and evaluate the prototype
    7. Improve as needed
    8. Communicate the results

    AP Computer Science: 12th Grade Options

    After students finish SEP11, there are two 12th-grade SEP options:

    • AP Computer Science A (Java)
      • This course is recommended for students who plan to major in Computer Science in college.
      • Content: object-oriented programming. Problem solving, design strategies and methodologies, organization of data (data structures), approaches to processing data (algorithms), analysis of potential solutions, and the ethical and social implications of computing.
      • Assessment: one end-of-year exam with multiple-choice and free-response questions.
    • AP Computer Science Principles
      • This course is recommended for students who do not plan to major in Computer Science in college.
      • Content: the broader aspects of computing. Programming, the global impact of computing, the internet and cybersecurity, and creativity.
      • Assessment: each student must complete one project during the course, and an end-of year exam with multiple-choice questions.

    More results on Google.

    FAQ

    • Do we get honors credit for being in SEP?
      • 11th and 12th-graders in SEP get honors credit (which gives your GPA an extra boost).
    • What kind of laptop should I buy?
      • It depends on your budget. If I had a one-stop recommendation, it would be a Macbook Air, and if a brand new one is too expensive, look for a used one. If you plan on using any resource-heavy applications for things like editing video/audio/images, consider getting a Macbook Pro. Or if you want higher specs (CPU/ram/storage) to make your computer more future-proof, that's another reason to get a Macbook Pro. But those are definitely more expensive. There are probably great Windows computers out there, but there is so much variety, especially when it comes to reliability.
    • Can I come out of SEP?
      • In a word, no. Very few students come out of SEP, and it is usually for extreme reasons. If you want to come out of SEP, the most likely reason is that you are lacking motivation; perhaps it is getting difficult and you struggle to see the benefit of the program. The best place to start is reading through the list of skills attained by being in this program. Remember, even if you never write a line of code after this program, you can take ALL of those skills with you wherever you go!
      • If, after reflecting on the skills, you still want to come out of SEP, please talk to the following people in this order:
        • Your teacher and grade advisor (both, but in any order)
        • Mr. Mueller, the SEP Coordinator
        • Ms. Shepard, the Principal
      • The most likely scenario is that, during one of those conversations, you will understand that staying in the program is the best course of action for you.
    • What is the best IDE to use?
    • That really depends on your situation:

      • For the work we do in HSTAT SEP, you are likely doing your work on multiple computers that are shared with multiple people. In that case, a cloud-based IDE is ideal. We typically use a variation of cloud9. We used to use the classic cloud9, but as it was acquired by AWS, its pricing structure poses a problem for us. In the meantime, we are using ide50, an IDE based on Harvard's CS50 MOOC course. In the future, we might run our own server that hosts the cloud9 software. There are other cloud-based options out there, but none of them are as robust yet simple as cloud9.
      • For college work or any situation where you're always doing work on your own laptop, a local IDE is ideal. A very popular solution is Visual Studio Code (VScode). You can also use editors like Sublime Text or Atom. On a Mac, Terminal or iTerm is used for a command line. And if preferred, you could install Github Desktop for a GUI interface.

    Workflow

    • Google Tasks/Calendar
      • Google Tasks and Google Calendar are great for time management. Google Tasks is ideal for your to-do list (i.e. homework, projects, etc), whereas Google Calendar is a great way to remember events in the future and also schedule your time. You can have multiple Tasks lists, and multiple Calendars.
    • Keyboard Shortcuts
    • Dynalist
      • A very powerful tool for planning, outlining, etc. Great at indentations, keyboard shortcuts, color-coding, etc.
    • AppleScripts
      • On a Mac, AppleScripts are a great way to automate your redundant/repetitive tasks. Use Google/Youtube to learn more!

    Other Resources

    Vocabulary

    Here you will find many vocabulary terms related to computer science and software engineering.

    Click to flip a card

    CS

    Computer Science

    Emphasis on theory. Often focuses on foundations of computing including algorithms, programming languages, theories of computing, artificial intelligence, and hardware design.

    Software Engineering

    Emphasis on application. Overlaps with computer science, but often focuses on solving real-world problems by creating software.

    IDE

    Integrated Development Environment

    A place where a programmer typically does their coding. Usually includes a text editor, and often a file tree and debugger (like cloud9).

    Front end

    The visual side of a website or web application. Responsible for user interface. You can use the browser's inspector tools to look at the front end code (HTML, CSS, JS).

    Back end

    The "behind-the-scenes" side of an application. Responsible for data interaction. This code is hidden to the user.

    Full stack

    Both front end and back end.

    MVC

    Model-View-Controller

    The three sections of most web applications.

    Model = back end

    View = front end

    Controller = middleman

    Github

    A place where programmers share the code of their projects in an "open-source" fashion where others can distribute and contribute to each others' code. Versions of the code is managed by Git, a version-control system that keeps "snapshots" of files.

    Server

    A computer that is primarily a hard drive and network card. Used for public retrieval of information. Used for website and other data storage.

    Host

    The place where data/sites/software lives, often on 1 or multiple servers.

    IP Address

    Internet Protocol Address

    The virtual location of a computer or server. Usually a string of numbers.

    URL

    Uniform Resource Locator

    The link/address to a website. Usually a string of text.

    Stackoverflow

    An online resource where anyone can ask and answer questions, often relating to computer programming. Questions and answers are up-ranked by users so that the best responses show near the top.

    Startup

    A relatively new business. Often has fewer members who have a wide range of skills, such as being full-stack developers. On the other hand, larger companies often have employees who focus on a smaller range of skills.

    Field

    An industry of related careers (ex: the software engineering field, the field of medicine, etc).

    CEO

    Chief Executive Officer

    The highest-ranking person in a company or other institution, ultimately responsible for making managerial decisions.

    CLI / Terminal / Bash

    Command Line Interface

    A text-based way to interact with a computer or server. Often used for manipulating and running files.

    GUI

    Graphical User Interface

    Similar to a Command Line Interface, but uses intuitive gestures with icons instead of text-based commands. Also limited in capabilities compared to the CLI.

    OO/OOP

    Object Orientation

    A.k.a. object-oriented programming. A data type where each object has both methods (functions/actions) and properties (descriptions).

    API

    Application Programming Interface

    A set of routines, protocols, and tools for building software applications. Often used to give access from one software application to another (ex: Google Maps being used in other software).

    DRY

    Don't Repeat Yourself

    Keeping your code "dry" means you're not copying/pasting, but rather making your code more efficient.

    Iteration

    A "step". Usually referred to going through a loop. Could be in the context of a computer program, or a step of a process (ex: "Apple is about to release the next iteration of the iPhone").

    UI

    User Interface

    How the front end looks and how the user interacts with pages and visual elements like colors, buttons, and icons.

    UX

    User Experience

    How the user experiences a product or application based on the process they go through to discover it, the sequence of actions in interacting with it, and their thoughts, feelings, and impressions during/after the experience.

    Bandwidth

    Often used in reference to internet/server speed. Think of it as the number of lanes on a highway.

    Analog/digital

    Analog has a range of values (like a knob: 0-127). Digital has discrete values (like a lightswitch: on/off).

    WWW

    World Wide Web

    An information space where documents and other web resources are identified by URLs.

    W3C

    The World Wide Web Consortium

    An international community that develops open standards to ensure the long-term growth of the Web.

    ISP

    Internet Service Provider

    The company that provides internet to a building (ex: Spectrum, Verizon FiOS, Comcast).

    DNS

    Domain Name Service

    Usually run by your ISP and matches URLs to IPs.

    HTTP

    Hypertext Transfer Protocol

    A set of instructions for distributing data. HTTP is the foundation of data communication for the World Wide Web.

    HTTPS

    Similar to HTTP; the "s" stands for "secure" which makes sure all communications between your browser and the website are encrypted. Sometimes webpages require external sources are loaded via HTTPS (if you get an error with "http", just add the "s" to the URL).

    Compile

    Convert the code into something that the machine can interpret.

    HTML

    HyperText Markup Language

    Language responsible for content of a website.

    CSS

    Cascading Style Sheets

    Language responsible for style of a website.

    JS

    JavaScript

    Front end programming language responsible for interactivity and modifying content/style.

    Java

    A programming language that allows users to play online games, chat with people around the world, calculate a mortgage interest, view images in 3D, etc. Android is written in Java.

    Python

    A highly-readable backend programming language often used for data-heavy applications.

    Ruby

    A highly-readable backend programming language often used for building web applications.

    SQL

    Structured Query Language

    Pronounced "sequel." Used for creating and manipulating databases. Comes in different variants (sqlite3, mysql, etc).

    Query

    Similar to "question." Often something you search for in a database (ex: all Amazon products with "headphones" in the title and has 5 stars).

    C, C++, C#

    Complex programming languages used for creating heavy-duty software and operating systems.

    OS

    Operating System

    The software that runs at the root of the computer and allows other software to run.

    PC

    Personal Computer

    Often runs the Microsoft Windows OS.

    MAC

    Macintosh

    Made my Apple, often runs macOS.

    CPU

    Central Processing Unit

    The "brain" of a computer that makes computations and carries out algorithms (steps).

    RAM

    Random Access Memory

    Like a "short-term" memory for quick retrieval.

    HD

    Hard Drive

    Like a "long-term" memory for archiving data.

    SSD

    Solid State Drive

    A type of hard drive with no moving parts. Works much faster than a standard hard drive.

    Bit

    Short for "binary digit." The smallest unit of information stored by a computer. Either a 0 or 1.

    Byte

    8 bits.

    KB

    Kilobyte

    1024 bytes.

    MB

    Megabyte

    1024 kilobytes.

    GB

    Gigabyte

    1024 megabytes.

    TB

    Terabyte

    1024 gigabytes.

    PB

    Petabyte

    1024 terabytes.

    WYSIWYG

    What you see is what you get

    Pronounced "wiz-ee-wig." Often used to refer to editors where the display on the screen directly corresponds to the final result in the output (like Google Sites).

    PDF

    Portable Document Format

    A universal format of displaying documents regardless of the operating system or hardware.

    JPG

    Joint Photographic Experts Group (aka JPEG)

    A file extension for a picture that has been compressed.

    PNG

    Portable Network Graphics

    A file extension for a picture that has been uncompressed and can also support transparency.

    Zip

    A method of compressing data (including sub-folders and files) into a single file. Uncompressing is to "unzip."

    IP

    Intellectual Property

    The things you created with your brain, i.e. on a whiteboard or in code.

    VC

    Venture Capital(ist)

    Investor funding for companies, especially startups. It's how they get money to hire employees, rent a building, etc. Investors (people with money) "loan" them money if they believe the company will make money, and they get a percentage back.

    R&D

    Research and Development

    Business or government activity that is purposely designed to stimulate invention and innovation.

    HR

    Human Resources

    The department within a company that deals with the hiring, administration, and training of employees.

    Marketing

    Promoting and selling products or services. Includes research and advertising.

    CMS

    Content Management System

    Software that facilitates creating, editing, organizing and publish content (i.e. Google Sites).

    Freedom Project

    Contributing

    To contribute to this page, please complete the following steps:

    1. Visit the repo for this website.
    2. Fork the repository.
    3. Make sure you are editing students/index.html
    4. Use the existing HTML to help you format your new content.
    5. Once you add/commit/push your changes, submit a Pull Request.

    Thank you for your contribution!