I have used Windows 10, macOS, Linux (lots of flavors, including Mint, Debian, Fedora, Manjaro, and various Ubuntus). Right now I am reasonable convinced that Windows is the best solution for me, although I miss Linux often. The biggest issue for me is the availability of software. Here are some immediate ones that come to mind:
1) The software I use to prepare my taxes (the browser version is more expensive if you can believe that) 2) Skype for business (necessary for my work at my university) 3) Acrobat Reader (necessary for some tax paperwork that requires submission by PDF) 4) Microsoft Office 5) iTunes (because I have an iPhone)
I bought a lifetime license for Crossover Linux because I wanted to support the Wine project. Wine will allow me to get by with an older version of Office (rather well, actually) and some other useful software (like the Epson wireless projection utility). The other items on my list don't work well with the latest version of Crossover. Many of the programs that I run in Linux (Thunderbird, Geany, Eclipse, wxMaxima, Octave, VLC, just to name a few) have Windows versions that work exactly the same way.
Windows also has better search from the start menu for documents and applications, something that only KDE seems to do well, and KDE has its own problems. Don't get me wrong, I spend a lot of time removing all of the asinine parts of Windows 10 from a Powershell session when I do a clean install, but that's not much different than the scripts I use to configure Linux distributions after I install. The addition of the Windows Subsystem for Linux also provides a lot of missing functionality (although it is much slower).
I know the VM solution will probably come up here, but I feel that if I have to use a Windows VM for certain tasks and a Linux host for others, I'm forced to configure two systems for my personal machine and that's time I don't have.
I've had a lot of issues with the post-8 versions of the Oracle JDK. I'm a high school teacher and a graduate student in computer science. In classes at my university, we've been using it a lot because databases are my area of focus. Last semester we were pretty much working with relational databases, and we used Java to write web applications using Spring. This semester we are working with NoSQL databases. I spent a couple of hours last week trying to get HBase working with JDK 11, and found quickly that the message in a lot of forums is "don't bother trying, you're doomed." Since I don't really want two installations of the JDK on my machine, I reverted back to JDK 8.
At school, our gradebook application is actually written in Java. You could run it from a terminal or command prompt (I use Linux, Mac, and Windows at school) with a "javaws launchGradeBook.jnlp" command (and it really ran the same in all three environments). In Java 11, javaws isn't around anymore, so that doesn't work. There's a workaround for our gradebook, but it's still annoying because I do a lot of my grading of student work from the command line. In Linux this isn't a huge deal because OpenJDK also supplies javaws, but in Windows/Mac it's a pain.
The biggest annoyance, though, is that the java-package package (which supplies the make-jpkg command) in Debian (and Debian derivatives) still doesn't apparently work on post-8 versions. Don't get me wrong, I use OpenJDK too, but I've had some issues with it and I like to have the Oracle JDK around as a deb file I can install.
There is already rail service between the two cities, the Amtrak Hiawatha line. It's been closed the last two days due to the temperatures, but it runs around every 90 minutes or so except at night. It's not bad (about a 90 minute trip) but it is definitely not high speed --- it's about as fast as driving. It's expensive ($50 round trip) but if you are planning on parking in Chicago it pays for itself. You can pick it up downtown, or at the MKE airport. If you ever use it, you should know that Union Station in Chicago is at the western edge of the downtown area, and that many of the attractions are along the eastern edge. It may be in your interest to buy a Ventra card so that you can use the Loop trains to get around. If you talk to other Wisconsinites, they'll tell you horror stories of getting delayed because freight trains have priority (which is true). That's only happened to me once and it was a minor delay. There are also discounts for regular commuters. The trains are clean and have restrooms but no dining service or anything fancy.
Chicago commuter rail (Metra) comes to Kenosha in Wisconsin but no further. Some of us were hoping that Foxconn could get Metra running to Milwaukee or at least Racine. Metra is a lot cheaper.
I live in Wisconsin, and I voted to elect Governor Evers (and against Trump). The Foxconn deal was a huge mistake. As others have noted, the state investment doesn't justify the jobs created. Unfortunately, it's probably too late to renege on it, even though the governor is probably tempted to (the legislature is still Republican-controlled, but apparently he could do it by pulling environmental permits). There have already been massive infrastructure investments and the use of eminent domain to obtain properties. I-94 between Milwaukee and Chicago is essentially being completely rebuilt right now (it's a pain, too, because we deal with much heavier traffic whenever I go to Chicago or to visit my family in Ohio.
On a more human note, my brother-in-law just got hired by them as an engineer (and yes, he's from Wisconsin, not Taiwan or the PRC) He is spending the next several months (at least until May, and this started around Jan. 1) working in Taiwan. They've hired a ton of professional staff. I'm in a graduate program at a Milwaukee university in computer science and they have been recruiting there. I don't know about manufacturing workers, but if this deal blows up, there's going to be a lot of people who are ALREADY working there who are going to get the shaft.
This deal may have a silver lining, however, because many people would like to see Milwaukee connected to Chicago to have SE Wisconsin essentially become part of Chicagoland. The economic benefits of that could be big. Increased rail service linking the two cities could be a byproduct of this project, which would potentially allow more Milwaukee residents to work in Chicago (and vice versa). We were going to get that with the last democratic governor but Walker pulled out of the deal because trains are for communists. If other companies came to the same region (which is a great location, because you are about 1 hour from OHare and a huge intermodal facility) it could end up being a positive. I'm not optimistic about that because I distrust everyone who was involved in the original deal.
I'm an AP Computer Science A teacher (the reason there is an "A" at the end is that there used to be an "AB" course as well that included data structures). That course is equivalent to CS1 at most universities, and that's what you get credit for if you take it (at most places). Java is the language and there's a good treatment of OOP, as well as recursion, sorting/searching algorithms, lists, arrays, and the fundamental stuff. The course that they are describing here is not AP CS A, it's a relatively new course, AP CS Principles. This is a course that's equivalent to a course that many universities create (including two in my metropolitan area) for liberal arts majors (meaning it's a gen ed course). Programming is part of the course, but 25% or less, and the course is intentionally language-agnostic. It's not a bad class (it exposes students to data science as well as programming, which I think is great), but it's not like CS A, which is a "for real" programming class equivalent to a course for freshmen in a CS major. Increasing the diversity in AP CS A is an accomplishment (in my opinion), but increasing AP CS Principles diversity is not very impressive unless you show that the students coming out of it choose a CS-related major (including data science, which is starting to be offered as an undergraduate major).
What concerns me a little bit right now is that many superintendents think they have a solid CS program if they offer AP CS Principles. I don't think you have a solid program until you have AP CS A or an equivalent course in a language like C++ or Python. Describing APCSP as "Coding Lite" may be too generous a description.
There are now two AP courses for Computer Science. The first is Computer Science A, which is essentially CS 1 taught in Java. I've had students go directly from that course into Data Structures/Algorithms at a university and they do fine.
The other course is a few years old, and it is called AP Computer Science Principles. I haven't taught that course, but I have been to professional development workshops preparing teachers to teach it. Those of you who work in universities may be aware of "general education" courses in computer science that are designed for liberal arts majors. This is basically that course (and at least one liberal arts college in my city offers an equivalent). It's all the rage right now, because there's not a lot of programming (probably less than 25% of the course) so more people are comfortable teaching it. It also lets schools claim that more students are learning CS (which, to an extent, they are).
As to whether books are necessary in AP Computer Science, I think they help. A well-written introductory textbook explains things in a thorough, logical way, with plenty of examples and exercises. They are not essential, but many students who are interested in the material but have little or no background in programming find a thorough treatment helpful. You can also learn some things you might not have known otherwise by reading a newer text in a common programming language. I recently learned about default methods in interfaces in Java 8, which is something I didn't know before; I learned it because I was reading a newer text on Java for AP Computer Science. I also believe that students interested in engineering or computer science should have the opportunity to learn how to read technical literature which can be somewhat dense.
That's not to say that they are an expensive waste of money for some students thanks to predatory pricing from textbook publishers.
One issue with textbooks is that if you use a common one, solutions to every single exercise are available online. You can detect this with some clever things like MOSS (and just eyeballing the code yourself), but it really disrupts a lot of learning. I did my first computer science courses in Pascal/C++ before the internet really took off (mid-90s) and you really had to figure everything out on your own. I think a lot of us teachers write our own exercises to get around this, and the AP examination is a great equalizer to know who has really been learning the material.
Successes: Office 2007, Euchre game (euchreusa.com), Epson wireless projector software for work (this is a HUGE success, it lets me run Linux in my classroom), Pearson test generator software, and Matlab R14 (original license was Windows, I don't have a licensed Linux version).
Failures: H&R Block tax software (which is cheaper than using their website).
All of these were tested with Crossover 16.2.5. I'm happy to support them - they make a quality product and help support the Wine project.
I also agree with another poster who mentioned that Wine is pretty much the best way to run 16-bit Windows applications. I have a REALLY old version of MATLAB (5.3) that works only with Wine.
I read the whole article, and I don't think the author was going for a positive spin. She describes the Amazon work environment in the same way it's been described elsewhere (brutal). I can't imagine having 70-year-olds doing that work. Walking 15 miles a day for an extended period of time (that's about 30,000 steps for pedometer people) would be tough even for someone my age/condition (in my thirties and ran 10K this morning). She also mentions a work-related injury where Amazon's response pretty much was "No concussion, back to work."
I use Java for two reasons. First, I teach and our school gradebook application is written in Java (this is a godsend, because it lets me use Linux 100% at work). Second, I teach AP CS and Java is the current language. OpenJDK works well (and it actually works for the gradebook application too, although it seems a bit buggier at times), but I do like having the Oracle JDK because it's what most of the students have (they are mostly running Windows/macOS). Very rarely (about once every couple of years) we run into a problem where a student program behaves differently under OpenJDK vs. the Oracle JDK.
I wanted to test JDK 9 today in Debian (stretch). Ordinarily I use make-jpkg (installed via java-package) to convert the Oracle tarball into a.deb file that I install with gdebi. Unfortunately, this doesn't work for for JDK 9. You can supposedly use a Ubuntu PPA which installs a package that downloads the tarball from Oracle and installs it. The maintainers of the PPA seem to indicate it's reasonably safe for Debian. That makes me nervous, though, because of all the warnings about mixing distributions in Debian documentation. I'd be happy to hear other opinions/options on this.
My colleagues using Windows are annoyed that the high DPI adjustment in Windows does not seem to work in Java applications; supposedly Java 9 was supposed to implement a fix to this, and I'm curious to see if they did.
I don't mind the question. I do like Cinnamon, which means Ubuntu is out because there's not an official Cinnamon-based edition (yes, I could install it from the repos, but I hesitate to do that). I've tried Linux Mint also, but there's been some controversy in that area because of the way they package security updates (it's also less problem-free, I've had a lot more weird reproducible bugs in Mint, like trying to run a full screen game and getting screen flickering that didn't happen in Ubuntu or Debian.
I know that a lot of Ubuntu developers work on Debian also and I appreciate their efforts.
I have used a lot of major distributions as a desktop (no server experience): Fedora, Ubuntu (including MATE/Gnome/XFCE), Linux Mint, Manjaro, and openSUSE. I always go back to Debian (albeit using Cinnamon as the desktop). It is generally the most problem-free of the distributions, especially considering that I run it on a laptop. Granted, software does sometimes get out of date when you run stable; this is mitigated by the fact that when testing enters the freeze process you can usually switch to it (and again, by that point, it is usually more problem-free than many other distributions). The other day a dosbox bug became an issue, but I just grabbed the SVN version and compiled it and it works great. Typically if there is a new version of software that you must have, you can compile from source or use backports (I prefer compiling from source). Because Ubuntu is built on Debian, many tutorials for Ubuntu are applicable (this is helpful). Many packages for Ubuntu (e.g. Google Chrome, Crossover Linux, etc.) are in common.
I tested Fedora 26 the other day because I do like Fedora (I loved Fedora 24). After installing updates and a number of software packages that I use regularly it started behaving badly (weird mouse/keyboard behavior that wouldn't go away after rebooting). That is not what you typically get with Debian. Debian is more work (you have to download a special iso or enable a special repository to get nonfree codecs, and you need to do some configuration to enable TRIM on a SSD (if you want to)) but in general it's not the back-breaking type of work that you can typically run into if you run a rolling release distribution like Manjaro.
One of the things that I like the most about Debian is that it is developed by a large, international community of people who are not controlled by the same corporation (I don't think I can say that about any other distribution, but feel free to correct me, I would love to be proven wrong on that).
Debian supports multiarch, so many of us have i386 packages installed on the amd64 of Debian. Wine / Crossover does this a lot. That's another explanation for the discrepancy.
This is a good question and I find myself going back-and-forth on this issue myself. I typically prefer Debian Stable and Fedora. Mainly because I like Gnome 3 (if you don't like Gnome 3, you probably feel differently and that's okay). Ubuntu seems a lot buggier than it once was (I started using it around 7.10). Also, Ubuntu wants to have its own version of everything (Mir, Unity, Snappy, etc.) and they never seem to put enough resources behind any of them to turn out a good product. Fedora on the other hand puts a lot of effort into using other projects (Wayland, GNOME, Flatpak) and contributing to their development, which makes Linux better for everyone regardless of distribution. I still like Debian better but stable gets pretty old quickly. Just the other day I went back to Debian 8 for a little bit and I had to remember that there are lots of little issues with several packages I use that haven't been fixed yet (it also does not run well on 6th-gen intel laptops because the kernel is back at 3.16). Running testing/unstable or using backports doesn't appeal to me (I've had some bad experiences). I went back to Fedora after a few days. Now, IMHO Wayland is still not ready for release (it has broken three applications I use regularly). However, Fedora lets you log in under X11 instead and so that's not really a problem. The one main difference between Fedora and Debian/Ubuntu is that the kernel is constantly being updated throughout the release (Fedora 24 started at 4.5.5 and is now in the 4.8 series).
I have a three-month-old Lenovo Yoga 460 with sixth generation Intel and it works fine under Fedora 24 and Ubuntu 16.04 LTS. Debian 8 has some issues (wifi) but Debian 9 does not (I like Debian best, and will probably move to it when 9 goes stable). No special configuration was needed for any of the hardware. For five minutes I ran Windows 10 on it (when I took it out of the box before I wiped the Windows partition) and I got a BSOD.
You do need to be careful choosing hardware when you run Linux (I am partial to ThinkPads, and one at work and one at home) but the myth of Linux not running on newer hardware is not fair in my opinion. I realize I don't run any fancy graphics --- maybe that's what makes the difference in your case.
AP CS teacher here with a BS in EE and a MEd in secondary mathematics.
You do not need a content master's degree to teach AP courses. You do not even need a master's degree in general to teach AP courses. Since the college credit is awarded based on the results of an examination completely out of the control of the instructor, the instructor's specific credentials are not as relevant as they would be if he/she was teaching it at a university with complete control. It may be that your state has added requirements (and if so, I'm sorry to hear that --- which state are you in?).
You do need a license if you teach it in a public school. My state gives two options for earning a CS license: completion of an undergraduate CS education program (which would be pretty much a major in CS with education courses added on) or (for math teachers) a license based on passing a CS content test. The CS content test covered material through Data Structures and Algorithms (and a little bit beyond that, but not much).
In my opinion an intelligent math teach who has completed data structures and algorithms (preferably in two languages --- I've done in in Java and Python) is qualified to teach AP CS. This is my third year teaching the course; I have a 94% pass rate on the exam to date.
I run Ubuntu on a desktop and four laptops (two ThinkPads, an Inspiron, and an older HP G60). I upgraded them all yesterday to 15.10. It has gotten a lot more stable lately (15.04/15.10). It used to be that when I ran it (back it the 13.04 / 13.10 / 14.10 non-LTS releases) that you'd get a lot of random crashes ("your system has encountered a problem"). With the 4.2 kernel and the bug fixes they've been putting into Unity it works pretty well. I'm not a full-time developer (a math / cs teacher), but I like Unity. I like being able to do super+F to search files, super+A to search applications. It is a very keyboard friendly interface (at least to me it is).
The other thing that makes it better (again, to me) than Gnome 3.14/3.16/3.18 is that it also utilizes space better (no annoying title bars, and integrating application menus into the top panel is also nice). I used to run Debian (stable) for stability but now that Ubuntu is getting more and more stable (and frankly, more stable in my opinion than Cinnamon on Mint) I've moved pretty much full time to Ubuntu.
This is not true. Most US teachers have the equivalent of an undergraduate degree in mathematics. Some of them (myself included) have an engineering degree and several upper division math classes (for majors). My course background:
Calculus and Analytic Geometry I, II, and III; Differential Equations, Discrete Mathematics, Applied Linear Algebra, Theoretical Linear Algebra, Abstract Algebra, Euclidean/Non-Euclidean Geometry, Number Theory, Mathematical Modeling, Calculus-Based Probability and Statistics, History of Mathematics, and Applied Analysis. The total number of semester hours in pure math was about 40 (some of the courses were on the quarter system and others were on the semester system, which makes the number approximate). These are just the pure mathematics classes --- obviously there was more math in the other science and engineering courses. And I was with math majors or engineering majors the whole time, many of whom went on to graduate study in mathematics. I also performed well, with an A in every class.
Your example of graduate work in education is likely true, because most PhD programs in content area education focus on research and pedagogy in that area. However, in many graduate programs (Ohio University is one example: http://www.ohio.edu/education/...) if you get a PhD in mathematics education you are expected to have master's level competency in mathematics. This is logical from the college perspective, because it allows people with PhDs in math ed to help out the local math department teaching undergraduate courses. Most people who get PhDs in a subject area (like math ed) were high school teachers who already have the equivalent of an undergraduate degree in the area. Many schools (Ohio State as an example) require an undergraduate degree in the subject area first, and the teacher's license is then obtained through a accelerated master's degree program).
I teach AP Computer Science. I definitely think it's worth the time if you can fit it into your schedule. That's the main issue at my school. I constantly hear from students that they are told by admissions people (and yes, admissions people from engineering schools) that the school would rather see a fourth year of Spanish than a year of computer science. The students just can't fit it all in (and I don't want them stressing themselves out to do it). One of the best things about AP Computer Science is that you get some good experience with recursion, inheritance, interfaces, class design --- more advanced topics that you might not encounter as a self-educated programmer (and many of the students in my classes are extensively self-educated). For students majoring in engineering / natural science fields other than computer science or computer engineering, it's definitely equivalent to the first-level undergraduate course. For a student majoring in CS / CompE / EE, I would suggest re-taking the introductory course. One of the things I got out of my introductory CS course at college (my background is EE / math) was familiarization with Unix. It's also easier transitioning into the advanced courses like data structures (especially if the language used is C++ instead of Java, which AP CS uses). I took five AP classes in high school (including the AP CS AB exam in Pascal and Calculus AB). I retook CS and Calc even though I passed the exams (and not because I didn't get useful credit for passing those exams, but because I thought it was unwise to skip them).
I am a teacher who has taught math and electronics in a high-performing public suburban school and currently teach math and computer science in a comparably performing urban preparatory school.
There are several reasons why AP CS enrollment has flat-lined as AP Statistics has surged (here are three that came to mind immediately):
1) There are a lot more kids taking Algebra as 8th graders. These kids (assuming success through the American four year Algebra, Geometry, Algebra 2, Precalculus sequence) need a course to take senior year. Most high school teachers will suggest AP Calculus or AP Statistics as an option. My previous employer went from 1 section of AP Calculus when I started to 7 sections of AP Calculus and AP Statistics by the time I had left (enrollment declined slightly during that time). Yes, the average AP scores went down a little during that time --- but I still think it's a good thing that more kids are taking the classes.
2) Lots of math teachers are willing and able to teach AP Statistics, but few can teach AP CS. In most states you need a separate license to teach it. I teach at a private school, so no such license is necessary (my undergrad is in electrical engineering, most of my work experience was software, and thus I feel comfortable teaching the course). The topics covered on the A exam (the AB, or harder, exam that I took in high school no longer exists) are not trivial. Inheritance, interfaces, polymorphism, and sorting/searching algorithms are all presented. Data structures topics (linked lists, stacks, queues, etc.) are not taught but could easily be taught in a follow up course, since most students taking AP CS at my school are juniors. Some of my teaching colleagues who know how to program would struggle with the object-oriented focus of the exam given that they came up during the Pascal era.
3) In the era of budget cuts, if you can only get 15 students to register for AP CS, it will not run in many schools. Sometimes it's feasible to run it every other year, but often that doesn't work. Many kids who are interested in programming cannot fit two semesters into their high school schedules. AP Statistics, however, fulfills the fourth year of mathematics that many schools require and thus is easier to fit into the schedule.
Let me say that I very much enjoy teaching the course. The examination in CS is challenging and well written. There are some topics that I'd like to see added (file input / output is not typically covered). I am confident in my students' ability to take Data Structures as a freshman if they pass the exam with a 4 or 5.
1) The end of the school year is typically when many teachers feel like getting out of the profession. This could be fatigue talking. I'm conducting exam review right now, and after three precalculus classes in a row in the late afternoon, doing limits, regression, trig. substitution, derivatives (not using shortcuts, but using the limit definition), vectors, and parametric functions, I'm exhausted. Maybe she wants to take some time over the summer to reflect about what it is she wants to do, and see how she feels in late July / early August. We don't start school until after September 1st.
2) Actuarial science is a field that might be good, if you are good at self-study (other posters mentioned insurance companies, and this is the path to such positions). The exams and preparation materials are not expensive (meaning, a lot less than taking courses at a university). Once you pass a few exams, many insurance companies will hire you and support you through the rest of them.
I can understand how she feels. It's not easy. That being said, usually by August I'm still excited to go back to work. I'm sorry it hasn't worked out better for her.
There are two ways around this in Ubuntu 11.10 (and, I'm assuming, derivative distributions). One way is to install from a PPA (that's the most likely answer you'll get if you search for a remedy online). I don't really like that idea, so I sat down today, did some research, and figured out how to install the latest version (1.6.0-30) directly from the Oracle website. It is not a trivial process, if you are a relative amateur like I am. Why does an amateur like me care? Because a very common mathematics learning software (ALEKS) requires Sun Java to run. I teach using this software, and although I could run a VM to access their system, I'd rather not. If anyone cares, here's what to do, after you download the appropriate.bin file from Oracle:
This weekend, I went to Office Depot, bought an HP 2000 laptop for about $329, brought it home, backed up the windows image, and installed Ubuntu 11.10. All of the conditions of his post are met. Battery life is good, fan is quiet, sound works, closing the laptop lid causes the machine to sleep, etc. Not sure what he means about backup - I use grsync which is easy enough to back up my home directory to a flash drive (primitive, I know, but I've never been burnt). No special configurations were necessary to install Ubuntu. It's funny that people keep bringing up WiFi. The last time I had problems with WiFi on Linux was a Broadcom chipset on Ubuntu 8.04. After that, everything has worked without issue (and I could get it working by extracting / copying firmware). Sometimes I think a lot of the Linux complaints about sound and wifi are out of date.
I'm not sure what "AppleCare" is unless it's some sort of extended warranty / replacement program. Unless you're very unlucky, a decent laptop is cheap enough that you're better off self-insuring. While it might make sense for an Apple product (I'm being generous) I don't think it makes sense for a basic laptop workstation.
Most of them use federal loan dollars as their primary revenue source. They probably won't survive otherwise.
My guess is they will lobby as hard as they can to avoid it.
There seems to be a lot of Unity-bashing around here, but I suspect that very few people have actually used it for an extended period of time. I have and do. It is really not that bad. I do "work" with my system; probably not the intensive coding tasks that many others do, but tasks that require me to be running and switching between multiple applications at the same time. It works. There are bugs, yes, but 11.04 is not an LTS. There needs to be an active user community working with it, so that it gets better. I am confident that 11.10 and 12.04 are going to be major improvements. I am not running it on anything special - a T4300 pentium with 4GB of ram. The performance is fine - much better than Windows 7 on the same machine.
I did switch to Xubuntu and liked a lot of things about Xfce, but went back to Unity because of the great keyboard shortcuts. If I want to run Octave, it's a matter of quickly typing super-o-c and pressing enter. I can also bring up websites pressing the super key, typing the URL, and pressing enter. I realize it would be scandalous for Linus to use Ubuntu, but I won't be surprised if other distributions start offering Unity.
I have used Windows 10, macOS, Linux (lots of flavors, including Mint, Debian, Fedora, Manjaro, and various Ubuntus). Right now I am reasonable convinced that Windows is the best solution for me, although I miss Linux often. The biggest issue for me is the availability of software. Here are some immediate ones that come to mind:
1) The software I use to prepare my taxes (the browser version is more expensive if you can believe that)
2) Skype for business (necessary for my work at my university)
3) Acrobat Reader (necessary for some tax paperwork that requires submission by PDF)
4) Microsoft Office
5) iTunes (because I have an iPhone)
I bought a lifetime license for Crossover Linux because I wanted to support the Wine project. Wine will allow me to get by with an older version of Office (rather well, actually) and some other useful software (like the Epson wireless projection utility). The other items on my list don't work well with the latest version of Crossover. Many of the programs that I run in Linux (Thunderbird, Geany, Eclipse, wxMaxima, Octave, VLC, just to name a few) have Windows versions that work exactly the same way.
Windows also has better search from the start menu for documents and applications, something that only KDE seems to do well, and KDE has its own problems. Don't get me wrong, I spend a lot of time removing all of the asinine parts of Windows 10 from a Powershell session when I do a clean install, but that's not much different than the scripts I use to configure Linux distributions after I install. The addition of the Windows Subsystem for Linux also provides a lot of missing functionality (although it is much slower).
I know the VM solution will probably come up here, but I feel that if I have to use a Windows VM for certain tasks and a Linux host for others, I'm forced to configure two systems for my personal machine and that's time I don't have.
I've had a lot of issues with the post-8 versions of the Oracle JDK. I'm a high school teacher and a graduate student in computer science. In classes at my university, we've been using it a lot because databases are my area of focus. Last semester we were pretty much working with relational databases, and we used Java to write web applications using Spring. This semester we are working with NoSQL databases. I spent a couple of hours last week trying to get HBase working with JDK 11, and found quickly that the message in a lot of forums is "don't bother trying, you're doomed." Since I don't really want two installations of the JDK on my machine, I reverted back to JDK 8.
At school, our gradebook application is actually written in Java. You could run it from a terminal or command prompt (I use Linux, Mac, and Windows at school) with a "javaws launchGradeBook.jnlp" command (and it really ran the same in all three environments). In Java 11, javaws isn't around anymore, so that doesn't work. There's a workaround for our gradebook, but it's still annoying because I do a lot of my grading of student work from the command line. In Linux this isn't a huge deal because OpenJDK also supplies javaws, but in Windows/Mac it's a pain.
The biggest annoyance, though, is that the java-package package (which supplies the make-jpkg command) in Debian (and Debian derivatives) still doesn't apparently work on post-8 versions. Don't get me wrong, I use OpenJDK too, but I've had some issues with it and I like to have the Oracle JDK around as a deb file I can install.
There is already rail service between the two cities, the Amtrak Hiawatha line. It's been closed the last two days due to the temperatures, but it runs around every 90 minutes or so except at night. It's not bad (about a 90 minute trip) but it is definitely not high speed --- it's about as fast as driving. It's expensive ($50 round trip) but if you are planning on parking in Chicago it pays for itself. You can pick it up downtown, or at the MKE airport. If you ever use it, you should know that Union Station in Chicago is at the western edge of the downtown area, and that many of the attractions are along the eastern edge. It may be in your interest to buy a Ventra card so that you can use the Loop trains to get around. If you talk to other Wisconsinites, they'll tell you horror stories of getting delayed because freight trains have priority (which is true). That's only happened to me once and it was a minor delay. There are also discounts for regular commuters. The trains are clean and have restrooms but no dining service or anything fancy.
Chicago commuter rail (Metra) comes to Kenosha in Wisconsin but no further. Some of us were hoping that Foxconn could get Metra running to Milwaukee or at least Racine. Metra is a lot cheaper.
I live in Wisconsin, and I voted to elect Governor Evers (and against Trump). The Foxconn deal was a huge mistake. As others have noted, the state investment doesn't justify the jobs created. Unfortunately, it's probably too late to renege on it, even though the governor is probably tempted to (the legislature is still Republican-controlled, but apparently he could do it by pulling environmental permits). There have already been massive infrastructure investments and the use of eminent domain to obtain properties. I-94 between Milwaukee and Chicago is essentially being completely rebuilt right now (it's a pain, too, because we deal with much heavier traffic whenever I go to Chicago or to visit my family in Ohio.
On a more human note, my brother-in-law just got hired by them as an engineer (and yes, he's from Wisconsin, not Taiwan or the PRC) He is spending the next several months (at least until May, and this started around Jan. 1) working in Taiwan. They've hired a ton of professional staff. I'm in a graduate program at a Milwaukee university in computer science and they have been recruiting there. I don't know about manufacturing workers, but if this deal blows up, there's going to be a lot of people who are ALREADY working there who are going to get the shaft.
This deal may have a silver lining, however, because many people would like to see Milwaukee connected to Chicago to have SE Wisconsin essentially become part of Chicagoland. The economic benefits of that could be big. Increased rail service linking the two cities could be a byproduct of this project, which would potentially allow more Milwaukee residents to work in Chicago (and vice versa). We were going to get that with the last democratic governor but Walker pulled out of the deal because trains are for communists. If other companies came to the same region (which is a great location, because you are about 1 hour from OHare and a huge intermodal facility) it could end up being a positive. I'm not optimistic about that because I distrust everyone who was involved in the original deal.
I'm an AP Computer Science A teacher (the reason there is an "A" at the end is that there used to be an "AB" course as well that included data structures). That course is equivalent to CS1 at most universities, and that's what you get credit for if you take it (at most places). Java is the language and there's a good treatment of OOP, as well as recursion, sorting/searching algorithms, lists, arrays, and the fundamental stuff. The course that they are describing here is not AP CS A, it's a relatively new course, AP CS Principles. This is a course that's equivalent to a course that many universities create (including two in my metropolitan area) for liberal arts majors (meaning it's a gen ed course). Programming is part of the course, but 25% or less, and the course is intentionally language-agnostic. It's not a bad class (it exposes students to data science as well as programming, which I think is great), but it's not like CS A, which is a "for real" programming class equivalent to a course for freshmen in a CS major. Increasing the diversity in AP CS A is an accomplishment (in my opinion), but increasing AP CS Principles diversity is not very impressive unless you show that the students coming out of it choose a CS-related major (including data science, which is starting to be offered as an undergraduate major).
What concerns me a little bit right now is that many superintendents think they have a solid CS program if they offer AP CS Principles. I don't think you have a solid program until you have AP CS A or an equivalent course in a language like C++ or Python. Describing APCSP as "Coding Lite" may be too generous a description.
There are now two AP courses for Computer Science. The first is Computer Science A, which is essentially CS 1 taught in Java. I've had students go directly from that course into Data Structures/Algorithms at a university and they do fine.
The other course is a few years old, and it is called AP Computer Science Principles. I haven't taught that course, but I have been to professional development workshops preparing teachers to teach it. Those of you who work in universities may be aware of "general education" courses in computer science that are designed for liberal arts majors. This is basically that course (and at least one liberal arts college in my city offers an equivalent). It's all the rage right now, because there's not a lot of programming (probably less than 25% of the course) so more people are comfortable teaching it. It also lets schools claim that more students are learning CS (which, to an extent, they are).
As to whether books are necessary in AP Computer Science, I think they help. A well-written introductory textbook explains things in a thorough, logical way, with plenty of examples and exercises. They are not essential, but many students who are interested in the material but have little or no background in programming find a thorough treatment helpful. You can also learn some things you might not have known otherwise by reading a newer text in a common programming language. I recently learned about default methods in interfaces in Java 8, which is something I didn't know before; I learned it because I was reading a newer text on Java for AP Computer Science. I also believe that students interested in engineering or computer science should have the opportunity to learn how to read technical literature which can be somewhat dense.
That's not to say that they are an expensive waste of money for some students thanks to predatory pricing from textbook publishers.
One issue with textbooks is that if you use a common one, solutions to every single exercise are available online. You can detect this with some clever things like MOSS (and just eyeballing the code yourself), but it really disrupts a lot of learning. I did my first computer science courses in Pascal/C++ before the internet really took off (mid-90s) and you really had to figure everything out on your own. I think a lot of us teachers write our own exercises to get around this, and the AP examination is a great equalizer to know who has really been learning the material.
Successes: Office 2007, Euchre game (euchreusa.com), Epson wireless projector software for work (this is a HUGE success, it lets me run Linux in my classroom), Pearson test generator software, and Matlab R14 (original license was Windows, I don't have a licensed Linux version).
Failures: H&R Block tax software (which is cheaper than using their website).
All of these were tested with Crossover 16.2.5. I'm happy to support them - they make a quality product and help support the Wine project.
I also agree with another poster who mentioned that Wine is pretty much the best way to run 16-bit Windows applications. I have a REALLY old version of MATLAB (5.3) that works only with Wine.
If you are running Ubuntu 17.10 it has been updated.
I read the whole article, and I don't think the author was going for a positive spin. She describes the Amazon work environment in the same way it's been described elsewhere (brutal). I can't imagine having 70-year-olds doing that work. Walking 15 miles a day for an extended period of time (that's about 30,000 steps for pedometer people) would be tough even for someone my age/condition (in my thirties and ran 10K this morning). She also mentions a work-related injury where Amazon's response pretty much was "No concussion, back to work."
I use Java for two reasons. First, I teach and our school gradebook application is written in Java (this is a godsend, because it lets me use Linux 100% at work). Second, I teach AP CS and Java is the current language. OpenJDK works well (and it actually works for the gradebook application too, although it seems a bit buggier at times), but I do like having the Oracle JDK because it's what most of the students have (they are mostly running Windows/macOS). Very rarely (about once every couple of years) we run into a problem where a student program behaves differently under OpenJDK vs. the Oracle JDK.
I wanted to test JDK 9 today in Debian (stretch). Ordinarily I use make-jpkg (installed via java-package) to convert the Oracle tarball into a .deb file that I install with gdebi. Unfortunately, this doesn't work for for JDK 9. You can supposedly use a Ubuntu PPA which installs a package that downloads the tarball from Oracle and installs it. The maintainers of the PPA seem to indicate it's reasonably safe for Debian. That makes me nervous, though, because of all the warnings about mixing distributions in Debian documentation. I'd be happy to hear other opinions/options on this.
My colleagues using Windows are annoyed that the high DPI adjustment in Windows does not seem to work in Java applications; supposedly Java 9 was supposed to implement a fix to this, and I'm curious to see if they did.
I don't mind the question. I do like Cinnamon, which means Ubuntu is out because there's not an official Cinnamon-based edition (yes, I could install it from the repos, but I hesitate to do that). I've tried Linux Mint also, but there's been some controversy in that area because of the way they package security updates (it's also less problem-free, I've had a lot more weird reproducible bugs in Mint, like trying to run a full screen game and getting screen flickering that didn't happen in Ubuntu or Debian.
I know that a lot of Ubuntu developers work on Debian also and I appreciate their efforts.
I have used a lot of major distributions as a desktop (no server experience): Fedora, Ubuntu (including MATE/Gnome/XFCE), Linux Mint, Manjaro, and openSUSE. I always go back to Debian (albeit using Cinnamon as the desktop). It is generally the most problem-free of the distributions, especially considering that I run it on a laptop. Granted, software does sometimes get out of date when you run stable; this is mitigated by the fact that when testing enters the freeze process you can usually switch to it (and again, by that point, it is usually more problem-free than many other distributions). The other day a dosbox bug became an issue, but I just grabbed the SVN version and compiled it and it works great. Typically if there is a new version of software that you must have, you can compile from source or use backports (I prefer compiling from source). Because Ubuntu is built on Debian, many tutorials for Ubuntu are applicable (this is helpful). Many packages for Ubuntu (e.g. Google Chrome, Crossover Linux, etc.) are in common.
I tested Fedora 26 the other day because I do like Fedora (I loved Fedora 24). After installing updates and a number of software packages that I use regularly it started behaving badly (weird mouse/keyboard behavior that wouldn't go away after rebooting). That is not what you typically get with Debian. Debian is more work (you have to download a special iso or enable a special repository to get nonfree codecs, and you need to do some configuration to enable TRIM on a SSD (if you want to)) but in general it's not the back-breaking type of work that you can typically run into if you run a rolling release distribution like Manjaro.
One of the things that I like the most about Debian is that it is developed by a large, international community of people who are not controlled by the same corporation (I don't think I can say that about any other distribution, but feel free to correct me, I would love to be proven wrong on that).
Debian supports multiarch, so many of us have i386 packages installed on the amd64 of Debian. Wine / Crossover does this a lot. That's another explanation for the discrepancy.
This is a good question and I find myself going back-and-forth on this issue myself. I typically prefer Debian Stable and Fedora. Mainly because I like Gnome 3 (if you don't like Gnome 3, you probably feel differently and that's okay). Ubuntu seems a lot buggier than it once was (I started using it around 7.10). Also, Ubuntu wants to have its own version of everything (Mir, Unity, Snappy, etc.) and they never seem to put enough resources behind any of them to turn out a good product. Fedora on the other hand puts a lot of effort into using other projects (Wayland, GNOME, Flatpak) and contributing to their development, which makes Linux better for everyone regardless of distribution. I still like Debian better but stable gets pretty old quickly. Just the other day I went back to Debian 8 for a little bit and I had to remember that there are lots of little issues with several packages I use that haven't been fixed yet (it also does not run well on 6th-gen intel laptops because the kernel is back at 3.16). Running testing/unstable or using backports doesn't appeal to me (I've had some bad experiences). I went back to Fedora after a few days. Now, IMHO Wayland is still not ready for release (it has broken three applications I use regularly). However, Fedora lets you log in under X11 instead and so that's not really a problem. The one main difference between Fedora and Debian/Ubuntu is that the kernel is constantly being updated throughout the release (Fedora 24 started at 4.5.5 and is now in the 4.8 series).
I have a three-month-old Lenovo Yoga 460 with sixth generation Intel and it works fine under Fedora 24 and Ubuntu 16.04 LTS. Debian 8 has some issues (wifi) but Debian 9 does not (I like Debian best, and will probably move to it when 9 goes stable). No special configuration was needed for any of the hardware. For five minutes I ran Windows 10 on it (when I took it out of the box before I wiped the Windows partition) and I got a BSOD.
You do need to be careful choosing hardware when you run Linux (I am partial to ThinkPads, and one at work and one at home) but the myth of Linux not running on newer hardware is not fair in my opinion. I realize I don't run any fancy graphics --- maybe that's what makes the difference in your case.
AP CS teacher here with a BS in EE and a MEd in secondary mathematics.
You do not need a content master's degree to teach AP courses. You do not even need a master's degree in general to teach AP courses. Since the college credit is awarded based on the results of an examination completely out of the control of the instructor, the instructor's specific credentials are not as relevant as they would be if he/she was teaching it at a university with complete control. It may be that your state has added requirements (and if so, I'm sorry to hear that --- which state are you in?).
You do need a license if you teach it in a public school. My state gives two options for earning a CS license: completion of an undergraduate CS education program (which would be pretty much a major in CS with education courses added on) or (for math teachers) a license based on passing a CS content test. The CS content test covered material through Data Structures and Algorithms (and a little bit beyond that, but not much).
In my opinion an intelligent math teach who has completed data structures and algorithms (preferably in two languages --- I've done in in Java and Python) is qualified to teach AP CS. This is my third year teaching the course; I have a 94% pass rate on the exam to date.
I run Ubuntu on a desktop and four laptops (two ThinkPads, an Inspiron, and an older HP G60). I upgraded them all yesterday to 15.10. It has gotten a lot more stable lately (15.04/15.10). It used to be that when I ran it (back it the 13.04 / 13.10 / 14.10 non-LTS releases) that you'd get a lot of random crashes ("your system has encountered a problem"). With the 4.2 kernel and the bug fixes they've been putting into Unity it works pretty well. I'm not a full-time developer (a math / cs teacher), but I like Unity. I like being able to do super+F to search files, super+A to search applications. It is a very keyboard friendly interface (at least to me it is).
The other thing that makes it better (again, to me) than Gnome 3.14/3.16/3.18 is that it also utilizes space better (no annoying title bars, and integrating application menus into the top panel is also nice). I used to run Debian (stable) for stability but now that Ubuntu is getting more and more stable (and frankly, more stable in my opinion than Cinnamon on Mint) I've moved pretty much full time to Ubuntu.
This is not true. Most US teachers have the equivalent of an undergraduate degree in mathematics. Some of them (myself included) have an engineering degree and several upper division math classes (for majors). My course background:
Calculus and Analytic Geometry I, II, and III; Differential Equations, Discrete Mathematics, Applied Linear Algebra, Theoretical Linear Algebra, Abstract Algebra, Euclidean/Non-Euclidean Geometry, Number Theory, Mathematical Modeling, Calculus-Based Probability and Statistics, History of Mathematics, and Applied Analysis. The total number of semester hours in pure math was about 40 (some of the courses were on the quarter system and others were on the semester system, which makes the number approximate). These are just the pure mathematics classes --- obviously there was more math in the other science and engineering courses. And I was with math majors or engineering majors the whole time, many of whom went on to graduate study in mathematics. I also performed well, with an A in every class.
Your example of graduate work in education is likely true, because most PhD programs in content area education focus on research and pedagogy in that area. However, in many graduate programs (Ohio University is one example: http://www.ohio.edu/education/...) if you get a PhD in mathematics education you are expected to have master's level competency in mathematics. This is logical from the college perspective, because it allows people with PhDs in math ed to help out the local math department teaching undergraduate courses. Most people who get PhDs in a subject area (like math ed) were high school teachers who already have the equivalent of an undergraduate degree in the area. Many schools (Ohio State as an example) require an undergraduate degree in the subject area first, and the teacher's license is then obtained through a accelerated master's degree program).
I teach AP Computer Science. I definitely think it's worth the time if you can fit it into your schedule. That's the main issue at my school. I constantly hear from students that they are told by admissions people (and yes, admissions people from engineering schools) that the school would rather see a fourth year of Spanish than a year of computer science. The students just can't fit it all in (and I don't want them stressing themselves out to do it). One of the best things about AP Computer Science is that you get some good experience with recursion, inheritance, interfaces, class design --- more advanced topics that you might not encounter as a self-educated programmer (and many of the students in my classes are extensively self-educated). For students majoring in engineering / natural science fields other than computer science or computer engineering, it's definitely equivalent to the first-level undergraduate course. For a student majoring in CS / CompE / EE, I would suggest re-taking the introductory course. One of the things I got out of my introductory CS course at college (my background is EE / math) was familiarization with Unix. It's also easier transitioning into the advanced courses like data structures (especially if the language used is C++ instead of Java, which AP CS uses). I took five AP classes in high school (including the AP CS AB exam in Pascal and Calculus AB). I retook CS and Calc even though I passed the exams (and not because I didn't get useful credit for passing those exams, but because I thought it was unwise to skip them).
I am a teacher who has taught math and electronics in a high-performing public suburban school and currently teach math and computer science in a comparably performing urban preparatory school.
There are several reasons why AP CS enrollment has flat-lined as AP Statistics has surged (here are three that came to mind immediately):
1) There are a lot more kids taking Algebra as 8th graders. These kids (assuming success through the American four year Algebra, Geometry, Algebra 2, Precalculus sequence) need a course to take senior year. Most high school teachers will suggest AP Calculus or AP Statistics as an option. My previous employer went from 1 section of AP Calculus when I started to 7 sections of AP Calculus and AP Statistics by the time I had left (enrollment declined slightly during that time). Yes, the average AP scores went down a little during that time --- but I still think it's a good thing that more kids are taking the classes.
2) Lots of math teachers are willing and able to teach AP Statistics, but few can teach AP CS. In most states you need a separate license to teach it. I teach at a private school, so no such license is necessary (my undergrad is in electrical engineering, most of my work experience was software, and thus I feel comfortable teaching the course). The topics covered on the A exam (the AB, or harder, exam that I took in high school no longer exists) are not trivial. Inheritance, interfaces, polymorphism, and sorting/searching algorithms are all presented. Data structures topics (linked lists, stacks, queues, etc.) are not taught but could easily be taught in a follow up course, since most students taking AP CS at my school are juniors. Some of my teaching colleagues who know how to program would struggle with the object-oriented focus of the exam given that they came up during the Pascal era.
3) In the era of budget cuts, if you can only get 15 students to register for AP CS, it will not run in many schools. Sometimes it's feasible to run it every other year, but often that doesn't work. Many kids who are interested in programming cannot fit two semesters into their high school schedules. AP Statistics, however, fulfills the fourth year of mathematics that many schools require and thus is easier to fit into the schedule.
Let me say that I very much enjoy teaching the course. The examination in CS is challenging and well written. There are some topics that I'd like to see added (file input / output is not typically covered). I am confident in my students' ability to take Data Structures as a freshman if they pass the exam with a 4 or 5.
1) The end of the school year is typically when many teachers feel like getting out of the profession. This could be fatigue talking. I'm conducting exam review right now, and after three precalculus classes in a row in the late afternoon, doing limits, regression, trig. substitution, derivatives (not using shortcuts, but using the limit definition), vectors, and parametric functions, I'm exhausted. Maybe she wants to take some time over the summer to reflect about what it is she wants to do, and see how she feels in late July / early August. We don't start school until after September 1st.
2) Actuarial science is a field that might be good, if you are good at self-study (other posters mentioned insurance companies, and this is the path to such positions). The exams and preparation materials are not expensive (meaning, a lot less than taking courses at a university). Once you pass a few exams, many insurance companies will hire you and support you through the rest of them.
I can understand how she feels. It's not easy. That being said, usually by August I'm still excited to go back to work. I'm sorry it hasn't worked out better for her.
There are two ways around this in Ubuntu 11.10 (and, I'm assuming, derivative distributions). One way is to install from a PPA (that's the most likely answer you'll get if you search for a remedy online). I don't really like that idea, so I sat down today, did some research, and figured out how to install the latest version (1.6.0-30) directly from the Oracle website. It is not a trivial process, if you are a relative amateur like I am. Why does an amateur like me care? Because a very common mathematics learning software (ALEKS) requires Sun Java to run. I teach using this software, and although I could run a VM to access their system, I'd rather not. If anyone cares, here's what to do, after you download the appropriate .bin file from Oracle:
./jre-6u30-linux-x64.bin /opt/java /opt/java/64 /opt/java/64/jre1.6.0_30 /opt/java/64/jre1.6.0_30/bin/java /usr/lib/mozilla/plugins /opt/java/64/jre1.6.0_30/lib/amd64/libnpjp2.so
chmod +x jre-6u30-linux-x64.bin
sudo mkdir
sudo mkdir
sudo mv jre1.6.0_30/
sudo update-alternatives --install "/usr/bin/java" "java" "/opt/java/64/jre1.6.0_30/bin/java" 1
sudo update-alternatives --set java
cd
sudo ln -s
PS I'm sure there's a better way to do this, but it worked. I pieced this together off of the web - none of it is original.
This weekend, I went to Office Depot, bought an HP 2000 laptop for about $329, brought it home, backed up the windows image, and installed Ubuntu 11.10. All of the conditions of his post are met. Battery life is good, fan is quiet, sound works, closing the laptop lid causes the machine to sleep, etc. Not sure what he means about backup - I use grsync which is easy enough to back up my home directory to a flash drive (primitive, I know, but I've never been burnt). No special configurations were necessary to install Ubuntu. It's funny that people keep bringing up WiFi. The last time I had problems with WiFi on Linux was a Broadcom chipset on Ubuntu 8.04. After that, everything has worked without issue (and I could get it working by extracting / copying firmware). Sometimes I think a lot of the Linux complaints about sound and wifi are out of date.
I'm not sure what "AppleCare" is unless it's some sort of extended warranty / replacement program. Unless you're very unlucky, a decent laptop is cheap enough that you're better off self-insuring. While it might make sense for an Apple product (I'm being generous) I don't think it makes sense for a basic laptop workstation.
Most of them use federal loan dollars as their primary revenue source. They probably won't survive otherwise. My guess is they will lobby as hard as they can to avoid it.
There seems to be a lot of Unity-bashing around here, but I suspect that very few people have actually used it for an extended period of time. I have and do. It is really not that bad. I do "work" with my system; probably not the intensive coding tasks that many others do, but tasks that require me to be running and switching between multiple applications at the same time. It works. There are bugs, yes, but 11.04 is not an LTS. There needs to be an active user community working with it, so that it gets better. I am confident that 11.10 and 12.04 are going to be major improvements. I am not running it on anything special - a T4300 pentium with 4GB of ram. The performance is fine - much better than Windows 7 on the same machine.
I did switch to Xubuntu and liked a lot of things about Xfce, but went back to Unity because of the great keyboard shortcuts. If I want to run Octave, it's a matter of quickly typing super-o-c and pressing enter. I can also bring up websites pressing the super key, typing the URL, and pressing enter. I realize it would be scandalous for Linus to use Ubuntu, but I won't be surprised if other distributions start offering Unity.