So as some of you know, I teach a course called "Writing for the Web." We have an intermediate and advanced section of this course for our Writing Majors (B.A. Writing).
Anyway, in the advanced section (which I teach next semester) I've been having students purchase shared hosting space (SITE5.com) and then we build from scratch. Even though this is complicated on the first day of class--imagine explaining to 20 undergrad humanities types how to use the wget command, distinguish between MySQL login, SITE5 login, user #1 login--it has, in the end, worked out well.
I've felt there was some value in having students go through the experience of setting up a site on shared hosting from scratch. I still believe there is--I think.
But now I'm thinking about just using Get Pantheon and, presto, in 10 minutes with very little instruction I'll have student in a Dev, Test, Live environment context and a D7 site up and going. There's a few other things to teach in such a context, but I'm tempted to just jet all the SITE5 from scratch stuff (and the $45 expense to students) and just go with this free set up. There would be a lot few problems during the semester--and from a pedagogical point of view, we could get right to configuration, building, and writing, spending less time on setup (which can take hours with so many students in the room that forget passwords like they forget to tie their shoes).
My Question:
I note, however, that Pantheon does not give shell access. I guess we don't use shell access too much, but do you all think that's a big disadvantage to not have shell access? There is SFTP access and GIT access (but students won't have a linux setup). Students can also add modules and themes through the site UI.
So, should I not worry about not having shell access?
Second kind of unrelated question:
I'm thinking about that Drupal Camp over in Chicago on Dec. 6. Do those of you that might have seen my presentation, "How Rhetoric Helps us Become Better Web Writers," think that this presentation would be appropriate for that group? (It appears to be kind of a beginners group). The presentation was not Drupal-centric, but I could tie it to Drupal a little better.

Comments
Acquia Dev Cloud Free
Have you looked into Aquia's free dev cloud?
https://www.acquia.com/acquia-cloud-free
You can enable ssh access as well, see here:
https://docs.acquia.com/cloud/ssh
Ben
Thanks Ben, but I think with
Thanks Ben, but I think with the free Dev Cloud you can't use shell access. At least I think that's what this means. This is the same at Pantheon. So this distinction between "interactive" and "non-interactive" shell access is the issue I believe. Is that how you understand it?
If you have an Acquia Cloud Free subscription, you do not have support for interactive SSH shell access to your server, although you can use non-interactive SSH commands, including remote Drush commands.
I have not. But I will now!
I have not. But I will now! Thanks for that. I'll investigate.
Dan, I think your Rhetoric
Dan, I think your Rhetoric presentation would be fantastic for the Chicago Drupal Camp audience.
Hmm. I think it could be. I
Hmm. I think it could be. I didn't get much reaction from folks at the WebDev meet up other than from you. I actually think these are new concepts to this audience--most of the content strategy stuff I've heard at DrupalCon etc. has been more like a list of "best practices" than the presentation of a conceptual framework, which is what I was trying to do with the rhetorical triangle. I find this to be true across the literature I'm reading as well, not just at Drupalcon and such places.
Pantheon and Drush
It looks like you can set up Shell access on Pantheon by generating a private key. Here are the instructions:
http://helpdesk.getpantheon.com/customer/portal/articles/366938-generati...
You should be able to use Drush with Pantheon by exporting the site alias as well.
http://helpdesk.getpantheon.com/customer/portal/articles/411388-using-dr...
I'm pretty confident that the
I'm pretty confident that the instructions there are only for creating SSH keys so that you can use GIT or Drush. I don't believe you can get a $ prompt in the shell and run tar commands or drush commands directly from the shell. Drush is available, but you run it form local machine I think.
Well, I need to explore more
Well, I need to explore more and confirm, but so far I've discovered that with Aquia Cloud Free you don't get SFTP (only GIT, which I believe requires that you install locally on Mac or Linux and then mirror your repository locally). Furthermore, in Aquia Cloud Free the user cannot install a module through the UI (you can do that in Pantheon and then push to the Test server later).
So the Aquia site is pretty, but I think that this free setup anyway is lagging behind the Pantheon in terms of convenience. But I'll keep exploring.
Ah, also I note that the
Ah, also I note that the basic contact form won't work in Aquia Cloud Free as it does in Pantheon. Apparently mail servers are not available at all in the free Aquia setup. That's probably going to clobber the idea of using Aquia for me . . . I was hopeful.
So anyway, I suppose that not having Shell access is not a big deal either way--and I don't believe that either Pantheon or Aquia gives interactive shell access.
So back to my original query: perhaps I'm thinking that Pantheon has enough usability for beginning students of Drupal and writing that I can just use it and skip some of the hassles entailed in setting up Drupal in shared hosting.
Dan, have you considered
Dan, have you considered Drupal Gardens? http://www.drupalgardens.com/ I don't know much about it but it's support to make Drupal hosting dead simple. It may be too simple for your requirements, but it's worth looking into.
I actually did use Drupal
I actually did use Drupal Gardens a few years ago--perhaps the first version of the course. But the problem there is that the Gardens version of Drupal is really nothing like "real" Drupal at all. It's an extremely clumsy interface with a lot of jquery drag and drop stuff. It is "easy" in a sense (but it would drive you crazy as it does me) and in the end, a good student might be able to grab some concepts but in the end would have no idea how to configure a regular Drupal site. There a drawback in trying to make things tooooo easy!
As of Acquia Dev Cloud
As of Acquia Dev Cloud release 1.72 (as November 12th) you do have interactive ssh access.
https://docs.acquia.com/cloud/release-notes
SSH keys are generated by whatever machine you want to connect to a remote server. If you are regularly connecting to a remote server it will make your life much easier to set this up as you will no longer have to enter your password when connecting through terminal or putty.
SSH keys can be used with any hosting account that has shell access -- its just an authentication handshake. The Dev cloud dashboard automates adding your local key to the server.
As far as git is concerned, I would definitely recommend that you teach using version control tools to aspiring web developers as it is pretty much as baseline for any job they may secure in the future.
Here are some great videos on how to setup the dev cloud.
https://www.acquia.com/resources/acquia-tv/conference/acquia-cloud-free
On a side note, I am learning about Acquia's products quite a bit over the next few months. I accepted a role as a Solution Architect with Acquia and I would love to come and present their solutions to the group in a few months when I am more experienced with their product line. What do you think?
Thanks,
Ben
Hi Ben, Thanks so much for
Hi Ben,
Thanks so much for the response.
I'm going to look at those videos. I do have SSH keys, but perhaps I didn't realize that the same key works on any remote computer as long as you properly load the public key? up to the new server. I do freelance Drupal sites but typically just smaller sites that function well on shared hosting. Somehow these have enabled me (in the bad sense of that word) to manage with a lot of bad practices like not using staging servers and working live on the site all of the time). I've been lucky so far.
I may not be completely understanding the process, but using GIT (whether in Pantheon or Aquia) seems like overkill to me. For it seems that with Pantheon's three servers (dev, test, production) and Aquia's two servers (dev, staging) this already covers you for the consequence of some disruptive code. Just clone back from the other server. With GIT, if I understand it right, you end up cloning yet again the whole code base locally--and you need (on a Windows machine) set up a Linux server or do some other hacky kind of thing to get the setup working correctly.
I need to find some sort of bigger, conceptual overview on this. I always end up following particular, piecemeal instructions on this kind of thing and never quite get the big picture.
My students are not CS students and probably not headed to the development world. We hope instead to turn them into great content strategists and perhaps basic level Drupal configuration people that know how to build views of all sorts and know how to configure Drupal installs with ease--all without being able to develop a module or use any PHP code. If you think you'd have some things to say to that level of a student, I'd love to have you come visit our class--it meets on Wed nights from 6-9:00 in Allendale.
Dan
Here is how I use git for
Here is how I use git for drupal in a nutshell:
Step 1 - I develop most of my project locally. I use a mac, but you can use windows if you install WAMP.
Step 2 - When I have most of my codebase ready to go, I create a github repo and initialize that repo on my local computer. Then I push all the files on my local machine to github.
Step 3 - Now that I have completed code living on github, I can clone that code on any server or give another developer access to the github repo and they can clone all the code locally.
Step 4 - I can make changes to my code locally (called a commit) and push that one change to the github repo.
Step 5 - I can pull that single change into any other cloned version with a simple command.
This is a very basic way to use git and eliminate the need for ftp or sftp. It also logs all of your commits so you can roll back to a very specific version of your code at anytime from any environment.
Its pretty simple to configure and makes it possible for you to completely change your hosting environment whenever you feel like it.
It may be overkill for a class that won't get into dev but at least it would give them an understanding of how the devs are working with the code.
I would be happy to stop in and chat with your class anytime!
Ben
That's really great Ben. I
That's really great Ben.
I guess in addition to yet another code repository, the GIT setup gives you the version control to roll back to a particular commit that might be the cause of some problem.
My impatience with this kind of thing has to do with having so many different versions of the same thing everywhere . . . which is exactly the point I realize! And with the simple cloning of dev, test, production environments, that seems like three more than already get away with using now! :)
If you are every downtown, perhaps we could meet up sometime over the Thanksgiving or Holiday break and I could buy you lunch and you could either help me with GIT a bit, or we could talk about the class I teach or both. At any rate, thanks for the help. I'm pretty sure we've met before, but I don't recall where. Drupal group?
Dan
In Pantheon, you have one
In Pantheon, you have one codebase, and you migrate it forward through their dev->test->prod stagings. You can only push your git repo to dev, and then you come up with an organizational process for moving it forward through test and prod. This is accomplished by clicking buttons. :-)
In your case, the organizational process might not be all that big a deal. Or maybe students could come up with a process.
The free level lets you make a few dev sites, and tries to get your credit card info when you migrate it forward. You can get to the dev sites from the outside world, so you could just leave it there, depending on your needs. They have a one-click-Drupal type thing to set it up.
Also, Pagodabox is a similar hosting service, but without the various stagings. Manage your site as a git repo, push to re-deploy, etc. I happen to manage a Drupal one-button-install type thing for Pagodabox: https://pagodabox.com/cafe/paul-m/drupal-quickstart but it needs an update.
Pagodabox has a few annoying quirks such as needing to start a tunneling process to backup your database. But if you use Backup and Migrate module, not such a big deal.
HTH.
Thanks. What you say here
Thanks. What you say here helps to clarify things I learned today exploring it. The site allow all three servers--dev, test, live--to be seen publicly. Given that we are only adding modules and themes, the GIT versioning seems unnecessary since we can put everthing in dev, then move to test, then to live. I guess those environs can serve as sort of backups. But each of those staging sites also can be backed up! So there's lots of back up there.
AGain, thanks much for the clarification.
Having three stages lets you
Having three stages lets you work on the site on dev, move it to test for clients to look at or for content to be added or whatever, and then push to live for the world to see. Generally it's more useful for groups where you'll have dev and testing/content staging going on at the same time. Helps keep it organized.
Oh, yeah, duh. You used to
Oh, yeah, duh. You used to come to the Drupal meetups.
Dan
Correct Curriculum
Hey Dan,
I'm one of the co-founders of Pantheon. I just noticed this thread. Sorry for the late reply but I figured I'd chime in.
First of all, thanks so much for the kind words! Using Pantheon for education and training is one of the things that our whole team truly loves to see. Our inspiration is making tools to empower and enable innovation from the thousands of developers and users who find value in drupal, and training more folks is the fundamental "base" of that goal. So happy you found us to be useful.
Now, to address your question around curriculum for the class.
While the process of installing Drupal "from scratch" can serve as a memorable (if painful) initiation for writers seeking to publish for the internet, I don't really believe that it's a core skill. Drupal itself represents a very steep learning curve, and while you need to go deep into that and work with it on a daily basis to be a successful writer, you only need to get over the install hurdle once.
I would lean more heavily on higher-level HTML literacy, really understanding hypertext, and conceptually grokking data structures. It's a big leap to go from "pages" to data objects, to see what's possible when your writing (or "content" as they say) stored in a database, etc. These are the things that writers of tomorrow will need to have in their bones. There's so much ground to cover there, as well as understanding writing within a wider ecosystem. That's where I'd focus.
I may be biased, but I think FTP clients or and command-lines are probably a frustrating distraction for writers, and hopefully in a few more years the chances that a writer needs to confront these tools to get her work done will be slim to none. ;)
https://pantheon.io | http://www.chapterthree.com | https://www.outlandishjosh.com
Josh, I'm going to be having
Josh,
I'm going to be having my students use Pantheon this semester for our course in writing for the web.
Thanks for the help and encouragement in this direction. This strategy will help us to focus on site building, writing, and configuration, and less on the hassles related to shared hosting.
I believe the default set up allows each student to create two instances of a D7 site?
I also notice that when creating the D7 site, there's a radio button that can be checked (or not) that says something about using Pantheon integration. I assume that should be checked?
I'll let you know how it goes!
Thanks
Dan Royer
Grand Valley State