diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/confirm_email.html.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/confirm_email.html.erb index 2ab1bd292..03c75c0bc 100644 --- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/confirm_email.html.erb +++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/confirm_email.html.erb @@ -1,6 +1,6 @@ <% provide(:title, 'Welcome to JamKazam!') %> -
We’re delighted you have joined our community of 20,000+ musicians. We’d like to send you an orientation email with information and resource links that will help you get the most out of JamKazam. Please click here to confirm this email has reached you successfully and we will then send the orientation email.
+We’re delighted you have joined our community of 30,000+ musicians. We’d like to send you an orientation email with information and resource links that will help you get the most out of JamKazam. Please click here to confirm this email has reached you successfully and we will then send the orientation email.
If you have received this email but aren’t familiar with JamKazam or JamTracks, then someone has registered at our website using your email address, and you can just ignore and delete this email.
diff --git a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/confirm_email.text.erb b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/confirm_email.text.erb index 26503a494..07bce8391 100644 --- a/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/confirm_email.text.erb +++ b/ruby/lib/jam_ruby/app/views/jam_ruby/user_mailer/confirm_email.text.erb @@ -1,6 +1,6 @@ Welcome to JamKazam! -We’re delighted you have joined our community of 20,000+ musicians. We’d like to send you an orientation email with information and resource links that will help you get the most out of JamKazam. Please click <%= @signup_confirm_url %> to confirm this email has reached you successfully and we will then send the orientation email. +We’re delighted you have joined our community of 30,000+ musicians. We’d like to send you an orientation email with information and resource links that will help you get the most out of JamKazam. Please click <%= @signup_confirm_url %> to confirm this email has reached you successfully and we will then send the orientation email. If you have received this email but aren’t familiar with JamKazam or JamTracks, then someone has registered at our website using your email address, and you can just ignore and delete this email. diff --git a/web/app/assets/javascripts/react-components/landing/JamClassTeacherLandingBottomPage.js.jsx.coffee b/web/app/assets/javascripts/react-components/landing/JamClassTeacherLandingBottomPage.js.jsx.coffee index 585d1b677..17ff35d38 100644 --- a/web/app/assets/javascripts/react-components/landing/JamClassTeacherLandingBottomPage.js.jsx.coffee +++ b/web/app/assets/javascripts/react-components/landing/JamClassTeacherLandingBottomPage.js.jsx.coffee @@ -8,7 +8,7 @@ rest = context.JK.Rest()Online music lessons offer obvious advantages. You can teach students who live more than 30 minutes away – even students across the country. Teach during normal “off hours”, when students in your area are tied up at school or at work. Avoid the time and cost of travel to and from lessons. And an online lesson marketplace can bring students to you, helping you grow your income without requiring the time, effort, and cash needed to attract new students.
+Online music lessons offer obvious advantages. You can teach students who live more than 30 minutes away – even students across the country. Teach during normal “off hours”, when students in your area are tied up at school or at work. Avoid the time and cost of travel to and from lessons. And our online lesson marketplace can bring students to you, helping you grow your income without requiring the time, effort, and cash needed to attract new students.
Several companies have built online marketplaces of music teachers, but these markets – and online lessons in general – haven’t taken off like other online Internet markets. Why? Because every one of these companies relies on Skype or similar apps – built for voice conferencing – to deliver online music lessons. This is a major problem. Voice technology makes music sound awful in online sessions – so bad that teachers can’t assess the student’s tone and sometimes even the pitch of what they are playing, and so bad that it steals away the joy of playing music. These apps also have very high latency – a technical term that means that the student and teacher cannot play together, another critical requirement for productive lessons. Since Skype wasn’t built for music, it also lacks many other basic features to support effective lessons, like a metronome, support for backing tracks, etc.
@@ -125,7 +125,7 @@ rest = context.JK.Rest()
@@ -143,7 +143,7 @@ rest = context.JK.Rest()
Record Lessons & Student Performances
-
You can use JamClass by JamKazam to teach your own existing students if they'd like to take advantage of online lessons, and you can also use your own marketing programs to attract new students who want to engage you online. In either case, since you attracted the student through your own efforts, we only ask that you pay JamKazam $1 per lesson that you deliver using our services to help support our product development and support expenses. For your own students, you may also bill and collect payment for your lessons however you do this today, or if you prefer to bill and collect payments through our JamClass service, we will charge a flat 5% of the lesson revenue for this service, and drop the $1 per lesson fee.
+You can use JamClass by JamKazam to teach your own existing students if they'd like to take online lessons, and it’s free to use in this way for individual teachers, much like Skype.
-In the case where we refer students to you through the JamClass marketplace, we are making substantial marketing investments in attracting, equipping, and delivering these students to you, so in this case we will bill and collect payments from referred students. We will retain 25% of lesson revenue from these students, and we will deposit the balance of 75% of these lesson revenues into a bank account that you set up to accept direct deposits from JamKazam.
+If you would like JamKazam to bring new students to you through the JamClass marketplace, we will be making substantial marketing investments in attracting, equipping, and delivering these students to you. JamKazam will bill and collect payments directly from these referred students. We will retain 25% of lesson revenue from these students, and we will transfer the balance of 75% of these lesson revenues to you.
-Finally, there is one "special case" to consider. If you want to have students referred to you from the JamClass marketplace, you will need to opt in to participate in our TestDrive program.
- -From the student's perspective, students may sign up through JamClass for our TestDrive program, in which they may take introductory lessons (of at least 30 minutes each) from 4 different teachers for $49.99. This provides the critical benefit of letting students find a teacher with whom they connect and feel comfortable and confident, making it far more likely they will continue with lessons for the long term.
- -From the teacher's perspective, we ask that you accept up to a maximum of 8 TestDrive lessons per month, which would be a max of 2 per week. You are paid $10 for each TestDrive lesson from each student we bring to you, and you have a 25% chance of retaining the student long term at your regular lesson rate - a better chance if you're an awesome instructor. You may opt to accept more than 8 TestDrive lessons per month if you wish, but we ask that you be willing to accept at least 8 so that we can fulfill demand from new students looking for teachers.
+Also, please note that to participate in the JamClass marketplace, you will need to opt in to participate in our TestDrive program. TestDrive is a core component of our JamClass marketing programs, providing students interested in taking online lessons with discounted introductory packages to get started. To participate in the marketplace, you must be willing to teach at least 2 TestDrive lessons per week. You are paid $10 for each 30-minute TestDrive lesson, and some TestDrive students will become long-term students who pay your normal rates. You may opt to accept more than 2 TestDrive lessons per week if you would like to grow your student base more rapidly.
While you're getting this done, if you want to learn more about all the nifty features you can access in JamClass and in JamKazam in general, you can check out our online JamClass User Guide.
Sign up and start getting students referred from our marketplace.
@@ -90,7 +90,7 @@ rest = context.JK.Rest() $checkbox = $root.find('.terms-checkbox') context.JK.checkbox($checkbox) - # add item to cart, create the user if necessary, and then place the order to get the free JamTrack. +# add item to cart, create the user if necessary, and then place the order to get the free JamTrack. ctaClick: (e) -> e.preventDefault() @@ -100,7 +100,23 @@ rest = context.JK.Rest() loggedIn = context.JK.currentUserId? + if loggedIn + @markTeacher() + else + @createUser() + @setState({processing:true}) + + markTeacher: () -> + #rest.updateUser({teacher: true}) + #.done((response) => + # this.setState({done: true}) + context.location = '/client#/teachers/setup/introduction' + #) + #.fail((jqXHR) => + # this.setState({processing: false}) + # context.JK.app.notifyServerError(jqXHR, "Unable to Mark As Teacher") + #) createUser: () -> $form = $('.jamtrack-signup-form') @@ -108,10 +124,10 @@ rest = context.JK.Rest() password = $form.find('input[name="password"]').val() terms = $form.find('input[name="terms"]').is(':checked') - rest.signup({email: email, password: password, first_name: null, last_name: null, terms:terms}) + rest.signup({email: email, password: password, first_name: null, last_name: null, terms:terms, teacher : true}) .done((response) => - - + @setState({done: true}) + context.location = '/client#/teachers/setup/introduction' ).fail((jqXHR) => @setState({processing:false}) if jqXHR.status == 422 @@ -124,6 +140,4 @@ rest = context.JK.Rest() context.JK.app.notifyServerError(jqXHR, "Unable to Sign Up") ) - - @setState({processing:true}) }) \ No newline at end of file diff --git a/web/app/assets/javascripts/react-components/landing/ProductJamBlasterBottomPage.js.jsx.coffee b/web/app/assets/javascripts/react-components/landing/ProductJamBlasterBottomPage.js.jsx.coffee index 88bfb48b0..c06cb2ba9 100644 --- a/web/app/assets/javascripts/react-components/landing/ProductJamBlasterBottomPage.js.jsx.coffee +++ b/web/app/assets/javascripts/react-components/landing/ProductJamBlasterBottomPage.js.jsx.coffee @@ -143,7 +143,7 @@ context = windowWhen we initially built the free JamKazam service to let musicians play together live over the Internet, we started by having musicians use the Mac and Windows computers and audio interfaces they already own. We've signed up 20,000+ musicians along the way. We've analyzed data from more than 100,000 online sessions. And we've collected audio processing latency data on thousands of combinations of computers and interfaces, as well as 10 million Internet latency measurements between unique pairs of locations and ISPs. We've learned a lot from all this data.
+When we initially built the free JamKazam service to let musicians play together live over the Internet, we started by having musicians use the Mac and Windows computers and audio interfaces they already own. We've signed up 30,000+ musicians along the way. We've analyzed data from more than 100,000 online sessions. And we've collected audio processing latency data on thousands of combinations of computers and interfaces, as well as 10 million Internet latency measurements between unique pairs of locations and ISPs. We've learned a lot from all this data.
Typically you need to keep total one way latency down to 30 to 35 milliseconds or less in an online session, or the session will get too sloppy and fall apart. We found that the average audio processing latency of industry standard gear is 14 milliseconds (full round trip including analog-to-digital and digital-to-analog conversions). So just processing the audio eats up half of your total latency budget!
We designed the JamBlaster from the ground up to be the fastest audio processing device possible, and we have the JamBlaster running at 2.8 milliseconds of latency full round trip - a massive latency savings. Every one millisecond saved on audio processing is worth about 100 miles of range on the Internet backbone. The JamBlaster also reduces something called audio processing jitter, which delivers additional latency savings. The result is that the JamBlaster saves audio latency equivalent to about 1,500 miles of distance compared to today's standard computers and interfaces.
Looking at it another way, using JamKazam with standard computers and interfaces, a musician in the U.S. can play effectively with about 10% of the other musicians in the U.S. With the JamBlaster, that same musician can now play with about 35% of the other musicians in the U.S.
@@ -206,7 +206,7 @@ context = windowJamKazam has already signed up 20,000+ musicians who play in thousands of online sessions per month using their computers and audio interfaces. The JamBlaster interoperates seamlessly with other musicians who are running Mac and Windows PC setups, so you can jump right in and start playing with other musicians in the community using your JamBlaster from day one.
+JamKazam has already signed up 30,000+ musicians who play in thousands of online sessions per month using their computers and audio interfaces. The JamBlaster interoperates seamlessly with other musicians who are running Mac and Windows PC setups, so you can jump right in and start playing with other musicians in the community using your JamBlaster from day one.