Engaging Social Software Blog

Firefox Profiles for Web Development

Posted by: pagetribe on: January 16, 2010

Background

As part of web development you probably have a number of Firefox extensions added; like the excellent firebug. Occasionally you have to clear you cache, cookies etc while testing. This is annoying if you use Firefox for your day to day email, banking etc. You don’t want your normal browser environment disrupted by your web development and debugging sessions, and neither do you want some malicious extension script siphoning you bank details. So why not create another profile?

The Profile Manager.

Firefox provides a default profile called “default”. Through the Profile Manager you create a new profile, eg “DevProfile” for web development.

From the command line type:

firefox -no-remote -ProfileManager

This will open a dialogue box. Click “Create Profile…” and give it a name eg “DevProfile”. (Before you press “exit” continue reading.)

How to choose a profile

The easiest way to choose a profile is to uncheck the”Don’t ask at startup”one the Profile Manager dialogue box. Each time you start Firefox it will give the option to choose between which profile you would to run for that session.

If you would like to create a separate shortcut for the new profile leave “Don’t ask at startup” ticked in the Profile Manager and you will need to add the following to a new short cut or launcher.

firefox -no-remote -p DevProfile

What do the flags mean?

  • the “-p” flag selects a profile
  • the “-no-remote” flag tells firefox to start a completely new and separate firefox process. This has no attachment to the your default Firefox process and therefore a sandbox for development and testing. So practically, this means if you install any extension/addons, clear the cache/cookies etc., it will not affect your default profile.

Linux chmod explained

Posted by: pagetribe on: November 12, 2009

There are different groups on Linux with file permissions.

They are user, group and others.

User – the owner of the file
Group – users who are in this file’s group
Others – everyone else.

Each of these can have 3 types of permission:

Read – lets them view the file, but not change it
Write – Change the files contents
Execute – run the file, good for programs & scripts.

Chmod represents these with position and number.

For example:

chmod 764

Position:

The first number is for the user, the second for the group and the third for others.

Number:

0 no permissions
1 execute
2 write
4 read

To figure out the numbers to use:
1+2+4 = 7 read/write/execute files (user – eg you)
2+4 = 6 read/write files (group – eg root)
4 read (all others – eg none of the 2 above)

For reference, a table of permissions:

0 — no permission
1 –x execute
2 -w- write
3 -wx write and execute
4 r– read
5 r-x read and execute
6 rw- read and write
7 rwx read, write and execute

Setting up a LAMP server in Ubuntu – the easy way

Posted by: pagetribe on: November 12, 2009

The following is a step-by-step guide with images, on how to install a LAMP server on your Ubuntu system – the easy way.

Having a local LAMP server is great for web development, it is both private and fast.

The easiest way to set up a LAMP (Linux, Apache, MySQL, php) server in Ubuntu 9.10 (Karmic) or 9.04, is by marking LAMP server by task, in Synaptic Package Manger.

As a bonus, the server will be upgraded to the latest version after any future upgrades to the Ubuntu system.

So lets jump in.

First you will need to open Synaptic Package Manager from System->Synaptic Package Manager.

Once open select Edit-> Mark Packages by Task…

Edit-> Mark Packages by Task...

Select the LAMP Server check box.

screenshot_019

Click the Mark button.

screenshot_020

Select the Apply button

screenshot_021

and Apply again

screenshot_022

You should then see the download progress bar.

screenshot_023

In the next window you will be asked to enter a password for the MySQL database, and then another window asking you to retype the password.

screenshot_024screenshot_025

Thats it – done! How easy was that?

Next type in http://127.0.0.1/ in your browser

screenshot_028

and you should be presented with “It works!” page.

screenshot_029

Now you can put your php files in the /var/www directory. However, you may like to change the permissions of the /www directory so you can add files to this directory without sudo (root).

To do so, in a Terminal type (replacing yourusername with your actual user name):

sudo chown –R  yourusername /var/www

TIP: The chown is ‘change ownership’ and the ‘-R‘ is recursive, it applies the ownership to any sub-files of folders in the /www/ folder.

You can now add, delete & edit files in the /www/ directory.

In order to have visual access to MySQL, I recommend installing phpmyadmin.

You will be prompted to select a web server for automatic configuration. Select apache2 and then click <Forward>.

select apache from the prompt

The next screen will ask you if you want to configure a new database called dbconfig-common.  Select Yes and click <Forward>.

I chose to use the same password here as the MySQL root password. Then click <Forward>.

You will then be prompted to enter the MySQL root password. Enter the MySQL root password that you created earlier, then click <Forward>.

Reconfirm above password. Click <Forward>.

No to test if it worked, go to a browser and type: http://localhost/phpmyadmin/. You should see a page like this.

You can log in with the username root and the root password that you created earlier.

Which gives you this:

Hoora… all done, well done!

Dowload manager with firefox integration for Ubuntu

Posted by: pagetribe on: November 11, 2009

Gwget is a free graphical download manager.

gwget

gwget

To install in ubuntu use Synaptic package manager and search for gwget then install the Firefox add-on FlashGot. Under preferences in the FlashGot add-on you can select gwget as your download manager.

Then when you click on a link to download a file you are presented with a dialogue box, simply choose -GNOME Gwget.

flashgot

Flashgot

Separating content from design.

Posted by: pagetribe on: November 10, 2009

some notes from this excellent overview article on xml and xsl from Mulberry Technologies (“Copyright Mulberry Technologies, Inc., used by permission).

Introduction to XSL-FO Concepts
http://www.mulberrytech.com/papers/Intro2XSL-FO/Intro2XSL-FO.pdf

Also see and interesting video about xml and teaching the machine:
http://uk.youtube.com/watch?v=NLlGopyXT_g

When You Have XML Content

  • Content is reusable/repurposeable/customizable/personalizable/internationalizable/localizable
  • XML for single source publishing:
  • XML  transform  HTML
  • same XML  high-end composition  book
  • same XML  desktop publishing  journal and magazine
  • same XML  transform  RSS and ATOM syndication
  • same XML  archive/depository/database

xml wheel diagram

 

image: www.mulberrytech.com “Copyright Mulberry Technologies, Inc., used by permission.


XML in the Print Production Cycle

Most production using XML is a variation on one of these

  • XML after page production (maybe long after)
  • XML as part of composition
  • XML before composition

Making XML from Word Processors
Few authors work in XML

  • Give authors an HTML form and make XML behind the scenes
  • Give them word-processing “templates” and make XML behind the scenes
  • Translate clean word-processing styles to XML tags (or clean first, then transform)
  • Third-party products where authors think they are in a word-processor, but behind the scenes it’s XML
  • Microsoft Word 2003 and beyond
  • (edit awkwardly in XML, export XML)

Advantages of XML Before Composition

  • One source for all: web, print, CD, database, etc.
  • simultaneous production (no product X waiting for product Y) no parallel maintenance
  • Almost-instant galleys or editors’ proofs
  • Fewer communication steps

Setting up a virtual host on ubuntu tutorial.

Posted by: pagetribe on: March 13, 2009

Introduction:
This tutorial will show you how to set up a name-based virtual host using Apache2 and ubuntu.

Definition:
Virtual host allows you to host multiple websites on a singe webserver.
Name-based means you can access different sites on the same webserver using different names eg. domain1.com & domain2.com

Configuration:

1. Create a document root, cgi-bin and logs directory for each of the new sites you want. This tutorial will set up one new site; example.org

mkdir /var/www/example.org
mkdir /var/www/example.org/cgi-bin
mkdir /var/www/example.org/logs

2. Create a virtual host configuration file for the new site:

cp /etc/apache2/sites-available/default /etc/apache2/sites-available/example.org
(this copies the default file and renames it to example.org)

3. Edit the /etc/apache2/sites-available/example.org file and add the bold

<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName example.org
ServerAlias www.example.org

#ServerAlias allows for both example.org and www.example.org to be used.

DocumentRoot /var/www/example.org
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/example.org>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

ScriptAlias /cgi-bin/ /var/www/example.org/cgi-bin/
<Directory "/var/www/example.org/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

ErrorLog /var/www/example.org/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /var/www/example.org/access.log combined

Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>

4. Edit the /etc/hosts file and add the following:

127.0.0.1  example.org
127.0.0.1 www.example.org

(this will allow both example.org and www.example.org to be used)

5. Edit /etc/apache2/apache2.conf and add the following to the end of the file:

NameVirtualHost 127.0.0.1:80

6. Enable your virtual host (a2ensite is apache2 enable site):

a2ensite example.org

7. Restart apache

/etc/init.d/apache2 restart

8. Finally, open your browser and type http://example.org and then to see if the ServerAliaas is working http://www.example.org

2 other great tutorials:

Apache2 name-based virtual hosting on Debian/Ubuntu

Ubuntu Intrepid – Apache Virtual Hosts #1

Engaging Online Discussions

Posted by: pagetribe on: February 24, 2009

Some changes to consider for online discussions:

Add:

  • discussion expectations
  • introductory activity
  • separate ‘course questions forum’
  • student cafe forum
  • ??a forum for each topic, ie week 1 discussion?? this may break the flow too much, best not to.

Some changes to consider for the overall course:

Add:

  • end of unit knowledge check list. (Am i done yet: http://cnx.org/content/m17165/latest/)

Terminology:

A message added to a discussion board is called a post. A series of posts in response to the initial message is called a thread. Discussion boards asynchronous, they are accessible at different times by different people. This is in contrast to synchronous discussion which is called chat. Here all people involved are accessing the conversation at the same time.

Guidelines for instructors

” Instructors should

(a) explain the theoretical purposes of online discussion,
(b) create a sense of community among participants in an online discussion,
(c) model appropriate participation,
(d) paraphrase students contributions in light of course theory,
(e) synthesize students’ contributions to create a comprehensive view of the discussion, and
(f) use Socratic questioning”

reference: Promoting Durable Knowledge Construction through Online Discussion.

E-moderating presence online

  • Many online participants expect a great deal from their e-moderators. E-moderators try to encourage online participants to be self sufficient. You might find some strategies to create e-moderators ‘presence’ online ( without having to be there 24 hours a day) helpful!
  • Send out a personal e mail letter to all participants before the course starts, indicating how often they can expect you to visit (usually once a day).
  • Greet each participant by a welcome e mail on their first arrival, as well as in the conference
  • Ask for a personal e mail to the e-moderator as well as a message in the conference, early in the course
  • Mention each participant by name at some point in early summaries. Continue to mention individuals in your messages. This is very motivating and a fine way to acknowledge contributions
  • Run an e-tivity at stage 1 exploring how participants expect to fit the conferencing into their daily lives, and self-disclose a little about yours
  • As the conference builds up and you find you have many messages to read on your arrival each day, focus on the last few messages in a thread (rather than reading them chronologically)
  • As participants become more self sufficient and motivated (by stage 3) then avoid responding to each message but focus on setting up discussions really well and then summarising after a given length of time, adding your own teaching points then if appropriate
  • Be prepared to put congratulatory message up and then an invitation to further action (e.g. very interesting points here, can I invite a summariser, or maybe please focus on *** aspect now to build on the ideas).

reference: http://www.atimod.com/e-moderating/resources.shtml

Some basic strategies to encourage participation are:

  • Make forum participation part of your grading rubric (not effective by itself)
  • “Open” and “close” discussions on certain dates.
  • Where possible, direct Q&A that might be handled via email to the discussion boards
  • Create directed discussions by being an active conversation starter and participant. Don’t be afraid to interject yourself into threads multiple times to guide discussion as you would in a classroom.
  • Encourage topical online debate, perhaps even dividing your students into position groups.
  • Require unique contributions. One UAF faculty member requires that students post unique responses to his starter questions. This forces students to read previous material and rewards early participation.
  • Make a quick polling question the start of a thread… and kindling for a longer discussion.
  • Use discussion threads for roundtable critiques and peer evaluation of papers, ideas, and projects.
  • Make use of role playing. For example, have a student play the part of an author or political figure and allow peers to ask questions and engage in debate.
  • Appoint temporary student facilitators. Peer-to-peer learning is important to any community—taking on the role of “teacher” will force students to reflect, synthesize, and anticipate.

reference: http://distance.uaf.edu/lib/research/teaching-tips-05.pdf

Discussion expectations

It is important to outline the value of this learning activity for the learner. Specify the purpose and make it achievable. Some example text to place at the beginning of the discussion so students know what they are expected to do:

To succeed in this course, you must participate on the discussion forums. I believe interaction and participation with others will help you understand the content and provide a fuller course experience. Don’t let me down by failing to participate. I will notice!

I encourage you to locate and pass along any URLs or links to journal articles that might be helpful to other students. I also encourage you to share experiences on the discussion board.

Introductory activity example

The next example is taken from: http://cnx.org/content/m16213/latest/ which outlines what an introductory activity might look like.

Example 1

Each of you is required to introduce yourself to the class. After you complete your introduction, I expect you to respond to every post about your introduction. You will have one week to complete this assignment.

Here are the requirements for the introduction:

1. Name and current position
2. One sentence about what you expect to learn from this course (What do you want to know?).
3. One sentence about how you learn best (Think back to something that you learned and reflect on the process you used to learn this).
4. One paragraph pointing out what you find interesting about yourself (What makes you the person you are at this point in your life?).

Course question discussion forum:

Example 1
In the discussion board area, you will find a Forum titled Course Questions. This is the location I expect you to use to ask questions about the course. I also expect you to check the questions and responses to make sure your question has not already been addressed. I will check this Forum regularly and respond.

reference: http://cnx.org/content/m16223/latest/

Types of Questions for Discussion

How do you ask a question to elicit the level of thinking/learning that you want?

Well-defined questions and their appropriate use not only help students understand content on a basic level but also can guide them in elaborative and critical thinking about content. Varied types of questions can help create the appropriate learning environment for your students.

Questions can:

  • Extract factual knowledge
  • Query a student’s comprehension
  • Ask a learner to apply his/her knowledge and comprehension
  • Ask the learner to analyze information
  • Challenge the student to synthesize information
  • Have the learner evaluate and make judgements

You’ll notice that these types of questions relate directly to Bloom’s Taxomony of Educational Objectives, Cognitive Domain.

Use the links in the menu to learn how to compose these types of questions.

The following link outlines each of these individually.

Reference: http://tlt.its.psu.edu/suggestions/online_questions/types.html

Should we add an Am I Done Yet?

Example 1: Am I Done Yet?

To be sure you have completed all the requirements for Unit 1 and are ready to move on to Unit 2, complete the check list below.

1. Read chapters 1 and 2 in Taber and the essay “Best Practices for Scholars”
2. Posted at least one original post and two responses in Forum 1 on the Discussion Board
3. Completed and submited the Unit 1 Quiz
4. Turned in you self reflection essay

Have them all? Good work! Proceed to Unit 2.

reference: http://cnx.org/content/m17165/latest/

Why is collaboration important?

“Knowledge construction is best accomplished through collaboration. In general, students learn through the give-and-take among classmates. That is, as students write contributions to discussions, they learn what it is that they are trying to say. The replies that they receive from their classmates further this learning. (For a discussion of writing to learn, see Lindemann, 1995.) When students share ideas in a discussion, they receive feedback on those ideas. Often this feedback from classmates will cause cognitive dissonance for the student because it conflicts with their original views. The dissonance encourages students to revise their views and test their revised views in light of further peer review among the class (Knowlton, Knowlton, & Davis, 2000).” (http://frank.mtsu.edu/~itconf/proceed01/11.pdf)

Userful links:

http://twuid.pbwiki.com/Discussion+Board

Promising Practices
http://twuid.pbwiki.com/Promising+Practices+

http://cnx.org/content/expanded_browse_authors?letter=R&author=krestine

Promising Practices in Online Teaching and Learning
http://cnx.org/content/col10559/latest/

Establishing Tone in the Distance Course
http://cnx.org/content/col10529/1.3

“…students may be more motivated to do well when they are required to present their work in public or to participate in the wider professional community.” That is if many people, either anonymous or community, are looking at the work being produced, there is more motivation towards doing that work well. It reminds me of a case where a large corporation decided not to outline and implement many rules and regulations for staff business travel, but instead opened up the travel accounts for anyone in the comunity to see and review. The net result was a reduction in the amount spent on travel. The idea of opening up information for the community to see and review is a powerful concept. One that should be less feared, for all of the privacy issues, to a view of how one can benefit from such openness.

An interesting point made in this article is that Facebook has perhaps captured the essence of the university system more accurately that learning management systems have, focusing first on social interaction first and content second.

The walled-garden of Facebook is also a concern, the data that goes is in is a one way stream. Facebook have also not joined the ‘open social’ network to share information and allow it to go in both directions, in and out of their apps. See video below for an overview.

The main point of this article is that the ease in which technology like Google has made researching information has lessened students ability to evaluate different types of information and media, and how to dismiss, value, rank and evaluate it. Through intervention and training and by broadening students’ reading to other sources, media and platforms an information scaffold can be built which the student can then apply to other academic settings.

This is a great point. “The assumption of Google is that the popularity of sites is a validation of quality. Google is the internet equivalent of reality television: derivative, fast and shallow. ” (pg. 18) it certainly begs the question although the sites Google retrurns seem relevant, by what measure are they relevant? Is popularity, like reality TV, the best measure?

The article outlines a method of explicitly asking students to read articles from different media and writing a 20-30 words on the article. This gets students involved in planning an assignment and also seeing different media and contexts in which the topic is discussed. This style of assessment based around reading and research also provides for more reflective and divergent learning. It requires reading more widely and with interpretation. This style enables “Teaching form rather than content allows students to be active participants in the building of an information scaffold, and more responsible for their reading, writing and intellectual choices.” (pg.40). One needs to be vigilant and “…continual intervention, checking and correction, is required to stop students creating a culture of equivalence between sources, thereby undermining higher levels of scholarship.” (pg.40)

Also outlined are 10 questions students should ask when evaluating material that “…create a recognition that finding information is not synonymous with understanding information.” (pg.42)

  1. “Who authored the information?
  2. What expertise does the writer have to comment?
  3. What evidence is used? Are there citations in the piece?
  4. What genre is the document: journalism, academic paper, blog, polemic?
  5. Is the site/document/report funded by an institution?
  6. What argument is being made?
  7. When was the text produced?
  8. Why did this information emerge at this point in history?
  9. Who is the audience for this information?
  10. What is not being discussed and what are the political consequences of that absence?” (pg 41-42)

A nice quote: “The dancing, bouncing, mobile words capture the realization that we never graduate from literacy -we never ‘become literate’. We only reach new stages of reading, writing and thinking.”(pg 48)

Overall, a thought provoking and well written paper. It makes you question your own style of information research and the irrisitable ease which accompanies the search engine at your finger tips.

Diigo – first encounter

Posted by: pagetribe on: November 17, 2008

Just signed up for diigo.com account. After some playing around I think it is a great tool. Its like bookmarking but with the addition of leaving comment and highlights for other to see. These additions can be made either public, private and group specific. Started a new group called elss08 for engaging learning with social software as test and will continue to post relevant sites there.

After a little fumbling around trying to see other people highlights on pages, I realised that perhaps the diigolet in the toolbar was not enough to see as well as post comments. So you need to install the diigo toolbar to see others highlights and comments etc.

edit: I now have the diigolet working but it requires that you activate it by clicking to see highlighting etc. Which provides a small dropdown menu, which still unfortunately takes up screen space.

One immediate use of this tool could be in peer reviewing other work online. A student uploads their assignment and others are able to leave comments.

Please leave a comment if you get the digolet to work. Its a shame the toolbar takes up so much browser realestate.

Tags: