scalabridge / curriculum Goto Github PK
View Code? Open in Web Editor NEWmaterials and resources for workshop curriculum
materials and resources for workshop curriculum
Some attendees will be completely new to programming. We want material that covers the basics of programming:
This section can also introduce Scala syntax
Hi ScalaBridge. Is anyone interested in chatting about this project? A lot of Scala projects seem to be using Gitter. Maybe we could get a room there.
Terminal (how to access)
Java
Scala
Brew (or other package management)
IntelliJ?
Have guide per Operating System
A start:
Name | Org | Link |
---|---|---|
Scala Exercises | 47 degrees | https://www.scala-exercises.org/ |
Coursera Scala Specialization | Scala Center, free without certificate | https://www.coursera.org/specializations/scala |
Scala School | https://twitter.github.io/scala_school/ | |
Effective Scala | http://twitter.github.io/effectivescala/ | |
Creative Scala | Underscore | Currently in draft form |
During the first ScalaBridge NYC workshop, one of the attendees was unable to perform the setup on Ubuntu, and none of the volunteers could figure it out, either. There were issues installing the correct packages - for instance, OpenJDK installation instructions do not work.
Even more confusing is that there are two different setup instructions (for Windows, OSX, and Linux). In this particular example, these instructions did not work, and the Creative Scala setup instructions are unhelpful:
It would be great if someone could perform a full installation on Ubuntu and document the process with explicit instructions, including:
.deb
files, use a ppa
, or install using apt
)@DiannaB42 please let me know if I've missed anything!
"beginner" "intermediate" "advanced" or more notes about what the resource gives the person.
Let's give them colors instead of words so we can break it out into:
https://github.com/scalabridge/curriculum/blob/master/resources.md
Once we've developed more of pieces, let's put it all together in a "schedule" for what the workshop day will look like
Rough outline:
Schedule is a loose term since students will progress at different paces.
Here are some ideas: https://scalabridge.gitbooks.io/curriculum/content/build-more.html
We're looking for the curriculum to include helpful guides for completing a set of exercises (think small programming challenges that could be completed in the Scala REPL).
Ideas:
More inspiration:
The target audience is beginning programmers.
Students will have the opportunity to work on a small project or program during the workshop. What should this be?
Considerations:
Ideas:
Much of the scaling power of Scala lies in the core concept of Immutability.
Newbies need some kind of succinct context-framing around this to make their learning time a productive investment.
They can get this from exercises in the "Atomic Scala" book.
Please see '/curriculum/exercises' repo for 'ListBasics.sc' overview on first attempt to teach to Newbies with needed context-framing. Disclaimer: I'm a Newbie who just Googles up stuff.
NOTE: An *.sc is just an IntelliJ Scala Worksheet, which is a Scala Script that can be run within that IDE; or equivalently, pasted and run in the command-line REPL.
Maybe one way to grow momentum here is via a gitter channel? This way there's a 24/7 line of communication possible to deposit and discuss ideas?
There's an outdated import in the documentation, but before fixing I'd like to know whether the HTML is generated or if it should be edited manually. Also, is there a deploy process? If not, maybe using GitHub pages would be a good way to keep the documentation up to date?
As for the import, there are 11 instances of import doodle.jvm.Java2DCanvas._
, which yield the following error:
<console>:41: error: object Java2DCanvas is not a member of package doodle.jvm
Note: class Java2DCanvas exists, but it has no companion object.
import doodle.jvm.Java2DCanvas._
^
One of the volunteers from BridgeWater suggested replacing it with import doodle.jvm.Java2DFrame._
, but I'm not sure when or if it's necessary.
This will be presented at the beginning of workshops, but we should codify it in the curriculum as well
...but someone new to programming won't know what any of that means. Let's flush out the reasoning.
~1 pager that people can reference, trimmed down to the essentials
Hi there!
My kid has classes on Sat now that school is in. I would love to chat and contribute remotely; and was hoping someone could post a link to enter a Slack group for participation!
THANK YOU for organizing!
Dagny T
java -d64 -version
). Didn't work on 32-bit java (possibly b/c of memory requirements)./sbt.bat
but sbt.bat
and also >
instead of $
)A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.