Feed aggregator

Testing in Ember.js, Part 2: ember-try and the Travis CI build matrix

CKM Blog - Thu, 2015-04-30 13:23
Our Story So Far

The goal of automated testing is to find problems before your users do. Good tests do this by preventing bad code from being merged. A great continuous integration (CI) setup can catch problems in beta browsers and libraries in time to report them to their authors or fix your code before a release happens. By the end of this three part series you will have a great CI setup. Tests will automatically run against any browser you support and any future version of your dependencies.

In Part One, we covered using Sauce Labs and Travis CI to create your test matrix.

In Part Two, we will start testing our application against multiple versions of Ember using the excellent ember-try addon and create a Travis CI build matrix which will allow some options to fail without the entire test failing. The goal of these two improvements to our original setup is to see issues coming long before they become problems.

Getting Set Up

Part Two picks up right where we left off with a working ember-cli project and build configuration.

Let’s install the ember-try addon.

$ cd testing-sandbox $ ember install ember-try

ember-try is a completely configurable way to test your code against upcoming versions of Ember. You may want to customize this later, but for now let’s add a file to testing-sandbox/config/ember-try.js with these contents:

/* jshint node: true */ module.exports = { scenarios: [ { name: 'our-current', dependencies: { "ember": "1.11.1" } }, { name: 'ember-release', dependencies: { "ember": "ember#release" }, resolutions: { "ember": "release" } }, { name: 'ember-beta', dependencies: { "ember": "ember#beta" }, resolutions: { "ember": "beta" } }, { name: 'ember-canary', dependencies: { "ember": "ember#canary" }, resolutions: { "ember": "canary" } } ] };

That creates a few different build targets. The first one, our-current, is whatever version of Ember your app currently depends on. You will update this as you upgrade. The others are dynamically linked to the Ember release process for latest release, beta, and canary.

We can now run all of our tests against the beta version of Ember.js with a single command.

$ember try ember-beta test

Go ahead, give that a spin, it’s pretty great right?

You can also test everything in your config file with the command:

$ember try:testall Automating with Travis CI

In Part One, we learned how to test against any browser and now we know how to test against any version of Ember.js. The only thing missing is a way to automate the entire process. We’re going to take advantage of Travis CI’s build matrix to organize our tests into discrete units.

We need to modify our Travis configuration to:

  1. Make a variable for the browser we are testing with
  2. Make a variable for the Ember.js version we are testing against
  3. Not start Sauce Connect unless we need it
  4. Combine all of this into a build matrix
  5. Allow some of these test combinations to fail

The new .travis.yml file looks like this:

--- language: node_js node_js: - "0.12" sudo: false env: global: # Setup SauceLabs Credentials - SAUCE_USERNAME="YOUR_USER_NAME" - SAUCE_ACCESS_KEY="YOUR_ACCESS_KEY" # Some default values for our build matrix - START_SAUCE_CONNECT=false - EMBER_VERSION='our-current' - TESTEM_LAUNCHER='PhantomJS' matrix: fast_finish: true allow_failures: - env: EMBER_VERSION='ember-beta' - env: EMBER_VERSION='ember-canary' - env: "TESTEM_LAUNCHER='SL_internet_explorer_11_Windows_8_1' START_SAUCE_CONNECT=true" include: - env: "TESTEM_LAUNCHER='SL_firefox_Windows_7' START_SAUCE_CONNECT=true" - env: "TESTEM_LAUNCHER='SL_internet_explorer_11_Windows_8_1' START_SAUCE_CONNECT=true" - env: "EMBER_VERSION='ember-beta'" - env: "EMBER_VERSION='ember-canary'" cache: directories: - node_modules before_install: - "npm config set spin false" - "npm install -g npm@^2" install: - npm install -g bower - npm install - bower install before_script: # Create a sauce tunnel only if we need it - if [ "$START_SAUCE_CONNECT" = true ]; then ember start-sauce-connect; fi script: # run our tests against the Ember version and browser of our choice - ember try ${EMBER_VERSION} test --port=8080 --launch=${TESTEM_LAUNCHER} --skip-cleanup after_script: # Destroy the sauce tunnel if we needed it - if [ "$START_SAUCE_CONNECT" = true ]; then ember stop-sauce-connect; fi

That’s it for Part Two! Tune in next week for a look at writing acceptance tests to take advantage of this setup.

If you have questions or see a mistake, tweet @iam_jrjohnson.

Categories: CKM

Exploring the Archives for 150: Attend a $3 course, circa 1879

Brought to Light Blog - Thu, 2015-04-30 10:42

In preparation for UCSF’s 150th anniversary celebration exhibits, we’ve been doing a bit of exploring in the vaults. For the next several months, I’ll be posting some of the treasures we’ve discovered!

Check out the course registration process for UC Medical Department student Felix Bettelheim in 1878 and 1879. Forms included lecture admission tickets to courses in anatomy and surgery. The back of the tickets would be signed by the professor as a way to track attendance.

Lecture admission ticket, 1879, ArchClass H152

Lecture admission ticket, 1878, ArchClass H152

Note Hugh Toland’s name as instructor of surgery. Toland founded Toland Medical College in 1864 and later deeded the school to the UC. His gift created the UC Medical Department and paved the way for the establishment of UCSF.

Lecture admission ticket to Toland’s course, 1878, ArchClass H152

Bettelheim received certificates for completing dissection courses. According to a note in the collection, tickets to dissection courses were closely monitored to “prevent the morbidly curious from attending.”

Dissection certificate, 1879, ArchClass H152

Bettelheim’s tuition included fees for dissection labs. As noted in the receipt, it cost $3 to attend the “right lower” course. Bettelheim graduated in 1880, we hope debt free!

Course receipt, 1879, ArchClass H152

Categories: Brought to Light

Professor of Prosthodontia photographs, early 1900s

Brought to Light Blog - Tue, 2015-04-28 10:46

William Fuller Sharp, DMD, DDS, was the first alumni of the Dental Department of the Affiliated Colleges of the University of California (later UCSF School of Dentistry) to be placed on the faculty– where he remained for over fifty years. Sharp joined the school as an instructor in 1894, later becoming Professor of Mechanical Dentistry in 1899, Professor of Prosthetic Dentistry, Professor of Clinical Prosthodontia, and Professor of Prosthodontia, Emeritus in 1921. Sharp served as Acting Dean from 1926-1927 while Guy S. Millberry was on leave.

WF Sharp, Photograph collection, undated

Above, Sharp with dental prostheses, undated.

WF Sharp, Photograph collection, 1906

WF Sharp’s office, operating room, April 18, 1906.

WF Sharp, Photograph collection, 1906

Sharp in his office, April 18, 1906.

Categories: Brought to Light

EndNote Plug-In for Apple Pages Word Processor

In Plain Sight - Mon, 2015-04-27 16:14

If you’re using Apple’s Pages  instead of MS Word you’ll have to install the Pages EndNote plug-in if you want to cite references and create a bibliography:

More information here

Note that there are versions available for Pages 5.0 or later, and earlier versions.

Note: The plug-in is installed automatically when Pages ’09 is installed as part of the iWork suite (from a trial, retail box, Configure to Order, or volume license.)

Categories: In Plain Sight

Testing in Ember.js, Part 1

CKM Blog - Fri, 2015-04-24 16:05
The Big Picture

The goal of automated testing is to find problems before your users do. Good tests do this by preventing bad code from being merged. A great continuous integration (CI) setup can catch problems in beta browsers and libraries in time to report them to their authors or fix your code before a release happens. By the end of this three part series you will have a great CI setup. Tests will automatically run against any browser you support and any future version of your dependencies.

Requirements for this guide are Ember.js > 1.10 and Ember CLI > 0.2.3. It may be entirely possible to do this without Ember CLI, but I wouldn’t know how.

In Part One, we will cover using Sauce Labs and Travis CI to create your test matrix.

Getting Set Up

If you’ve never used Ember CLI before, you should follow their instructions to install all dependencies.

Now let’s create a new sandbox to play in:

$ ember new testing-sandbox $ cd testing-sandbox $ ember test --server

Congrats! You now have a brand new Ember.js app and running tests in both PhantomJS and Chrome. Go ahead and leave that console window open and create a new one. Tests will keep running in the original window and track all the changes we make.

$ cd testing-sandbox $ ember g acceptance-test welcome-page

Your test console should now record a failure indicating:

✘ UnrecognizedURLError: /welcome-page

Open testing-sandbox/tests/acceptance/welcome-page-test.js in your favorite editor and make it look like this:

import Ember from 'ember'; import { module, test } from 'qunit'; import startApp from 'testing-sandbox/tests/helpers/start-app'; var application; module('Acceptance: WelcomePage', { beforeEach: function() { application = startApp(); }, afterEach: function() { Ember.run(application, 'destroy'); } }); test('we should be welcoming', function(assert) { visit('/'); andThen(function() { assert.equal(currentURL(), '/'); var title = find('#title'); assert.equal(title.text(), 'Welcome to Ember.js'); }); });

Save that and all of your tests should pass. We are ready to get started with multi-browser testing.

Test Multiple Browsers in the Cloud

Sauce Labs is a service for running your tests against a huge variety of browsers. We’re going to abstract a lot of the complexity of using Sauce Labs by taking advantage of the excellent ember-cli-sauce addon. First, you will need Sauce Labs credentials. You can start a free trial or, if your project is open source, you can sign up for Open Sauce. When you are done, take note of your user name and access key. You will need them later.

Let’s install the addon:

$ember install ember-cli-sauce

Now we can add additional browsers to our testem.json file. Testem calls these launchers:

$ ember sauce --browser='firefox' --platform='Windows 7' $ ember sauce --browser='internet explorer' --version=11 --platform='Windows 8.1'

Lets run some tests!

First we have to export our sauce credentials as environment variables.

$export SAUCE_USERNAME="YOUR_USERNAME" $export SAUCE_ACCESS_KEY="YOUR_ACCESS_KEY"

Then we fire up a proxy tunnel so Sauce Labs browsers can get to our local Ember.js server.

$ember start-sauce-connect

Then we launch the actual tests.

$ember test --launch='SL_firefox_Windows_7,SL_internet_explorer_11_Windows_8_1'

You should see something like:

ok 1 Firefox 37.0 - Acceptance: WelcomePage: we should be welcoming ok 2 Firefox 37.0 - JSHint - acceptance: acceptance/welcome-page-test.js should pass jshint ok 3 Firefox 37.0 - JSHint - .: app.js should pass jshint ok 4 Firefox 37.0 - JSHint - helpers: helpers/resolver.js should pass jshint ok 5 Firefox 37.0 - JSHint - helpers: helpers/start-app.js should pass jshint ok 6 Firefox 37.0 - JSHint - .: router.js should pass jshint ok 7 Firefox 37.0 - JSHint - .: test-helper.js should pass jshint ok 8 IE 11.0 - Acceptance: WelcomePage: we should be welcoming ok 9 IE 11.0 - JSHint - acceptance: acceptance/welcome-page-test.js should pass jshint ok 10 IE 11.0 - JSHint - .: app.js should pass jshint ok 11 IE 11.0 - JSHint - helpers: helpers/resolver.js should pass jshint ok 12 IE 11.0 - JSHint - helpers: helpers/start-app.js should pass jshint ok 13 IE 11.0 - JSHint - .: router.js should pass jshint ok 14 IE 11.0 - JSHint - .: test-helper.js should pass jshint 1..14 # tests 14 # pass 14 # fail 0 # ok

Wasn’t that awesome? You just tested your code in two browsers. You can add anything you want to testem.json. Go nuts!

When you are done testing remember to kill the tunnel we opened.

$ember stop-sauce-connect Making It Automatic with Travis CI

The last piece of this puzzle is to use Travis CI to run these tests for you every time you commit code. Update your .travis.yml file to run Sauce Labs tests. You will need to tell Travis CI what your Sauce Labs credentials are in the env section:

--- language: node_js node_js: - "0.12" sudo: false env: global: #set these here becuase they get pulled out by testem saucie - SAUCE_USERNAME="YOUR_USER_NAME" - SAUCE_ACCESS_KEY="YOUR_ACCESS_KEY" cache: directories: - node_modules before_install: - "npm config set spin false" - "npm install -g npm@^2" install: - npm install -g bower - npm install - bower install before_script: # Create a sauce tunnel - ember start-sauce-connect script: - ember test --launch='SL_firefox_Windows_7,SL_internet_explorer_11_Windows_8_1' --port=8080 after_script: # Destroy the sauce tunnel - ember stop-sauce-connect

You are well on your way to being a cross-browser testing hero! In my next post I will take you through using the ember-try addon to test your code against upcoming Ember.js versions.

If you have questions or see a mistake, you can use the comments here or tweet @iam_jrjohnson.

Categories: CKM

Upcoming Lecture & Exhibit: History, Science and Art of Ocular Prosthetics

Brought to Light Blog - Fri, 2015-04-24 10:00

Lecture & Opening Reception
May 28, 2015,  3 – 5 pm
Lecturer: Robert S. Sherins, MD (UCSF, School of Medicine, Class of 1963)
This event is free and open to the public. Light refreshments will be provided.
REGISTRATION REQUIRED: tiny.ucsf.edu/lecture528
Lange Room, 5th Floor, UCSF Library – Parnassus
530 Parnassus Ave, SF, CA 94143

According to the United States Eye Injury Registry, each year there are more than 2.5 million eye injuries, from which 50,000 people permanently lose all or part of their vision, often leaving them severely disfigured. Through the centuries there had been many attempts to create safe, cosmetically pleasing and comfortable ocular prostheses. However, past devices were not designed well enough, fit poorly due to the gross sizing of the prosthetic samples and most of them were certainly irritating due to the use of unsuitable materials that were available at the time.

Illustrations for Hypoblephara (top) and Ekblephara from a book by Ambroise Paré, “The workes of that famous chirurgion Ambrose Parey…,” 1649, p. 576-577. The digital copy of this book is accessible online through the Medical Heritage Library and the original can be viewed at the UCSF archives.

Often called the “father of ocular prosthesis,” French surgeon Ambroise Paré in 16th century invented a device (Ekblephara) consisting of a leather-covered metal base with a painted eye, lid and lashes that was worn over the eyelid. Later on, Paré developed a metal accessory (Hypoblephara eye) that was inserted under the eyelid into the socket over the remaining atrophic eye.

Ludwig Müller-Uri (center) with his sons Albin and Reinhold, ca. 1875. Courtesy of Museum of Glass Art Lauscha.

Modern methods of creating ocular prostheses can be traced to the ingenuity of Ludwig Müller-Uri, a Glasbläser (glassblower) from Lauscha, Province of Thuringia, Germany. The town’s craftsmen also were known for their Christmas glass decorations, glass marbles, utilitarian housewares and doll’s eyes. After training with Prof. Heinrich Adelmann, an ophthalmologist in Würzburg, Müller-Uri became an “Augenprothetik” (prosthetic eye-maker) or ocularist. He improved the artificial eyes by individually fitting each prosthetic. Müller-Uri created the iris details using special tools to apply the pigments he blended to most realistically resemble the natural eye. By 1835, he began using a better quality glass from the local factory. It was not until 1885 that the best cryolite glass became available, which was crucial for the patient’s tolerance of the prosthesis since they became lightweight, corrosion-resistant and more lifelike. It became the standard material for making ocular prosthetics and is still used in Germany, whereas acrylic plastic has replaced cryolite glass in the U.S.
The Müller-Uri family working with the ophthalmologist from the Netherlands, Hermann Snellen designed the “Snellen eye” or “Reform-Auge” (“reform eye”) – prosthesis that consists of two connected shells with a hollow space between them and that can be worn by a patient with the enucleated eye.

Left to right: ocularists: Phillip Danz of Sacramento and William Danz of San Francisco, and Dr. Robert Sherins, ophthalmologist, UCSF School of Medicine Alumnus Class of 1963 holding the Danz collection of ocular pathology specimens during their visit to the UCSF Archives and Special Collections in January, 2015.

During the 1880s, Amandus Müller manufactured approximately 13 eye-kits consisting of ocular pathology specimens – the hand-blown glass eye models depicting diseases. He sold the kits to European medical schools where they were used as teaching aids. Amandus Müller was a grand uncle of Gottlieb Theodore Danz, Sr. In 1915, Gottleib T. Danz, Sr. immigrated with his family to New York and brought one of his uncle’s kits to America. Later on, he moved his office to San Francisco. After the death of Gottlieb T. Danz, Sr., his widow gave that kit to her grandson, Phillip Danz (also an ocularist). In 1963, Phillip donated the kit to Professor Michael Hogan, MD, then Chairman of the UCSF Ophthalmology Department. Eventually the kit was given to the UCSF Archives, where it remains preserved today.

Specimen #34 from the Danz ocular pathology collection. It shows massive traumatic scleral and corneal lacerations, dislocation of the entire lens, severe inflammation and herniation of the vitreous gel.

This beautiful collection was exhibited several times during the past 50 years. However, many historic details about this donation were lost. The purpose of the upcoming lecture and comprehensive exhibit is to use this unique artifact to tell the story of family traditions continued through the centuries on two continents. Through partnership with several members of the Danz family – ocularists: Phillip Danz of Sacramento; William Danz of San Francisco; and William Randy Danz of Ridgewood, New Jersey; as well as the author/lecturer, Dr. Robert Sherins, ophthalmologist, UCSF School of Medicine Alumnus Class of 1963; and UCSF archivist, Polina Ilieva, this exhibit will demonstrate the evolution of skillful craftsmanship of Müller-Uri and Danz families, as well as the science and art of ocular prosthetics. The UCSF Library is grateful to the Danz Family and Dr. Sherins for their continuing support.

Categories: Brought to Light

Messaging with Quickmail

Convergence - Fri, 2015-04-17 13:55

The CLE offers a number of methods for communication within a course, including forums, live chat, and an internal messaging system. If you want to contact course participants fast, however, each of these methods can fall short. Unless course editors and participants are logged in at the same time, or regularly viewing their courses, it is easy to miss updates because email notifications can be delayed anywhere from 15 to 60 minutes, or longer if a user has changed their notification preferences.

Enter: The Quickmail block! With Quickmail, you can push an email from within your CLE course to any number of course participants or groups, directly and immediately to their UCSF email inbox.

The Quickmail feature is installed and ready to use now. Here’s how it works:

  1. A course editor adds the block to a course.
  2. Course editors use the block to compose and send a new message.
  3. Recipients of the message will receive a new email message (addressed from the sender, not from a do-not-reply address!) in their UCSF email inbox, within a few minutes.

Using the Quickmail block is very easy, and powerful, because it allows you send messages to groups you have already created in the course, or to all users with a particular role (like all instructors or all students).

By default, only course editors can add and use the Quickmail block. With a few adjustments to the block’s settings, though, you can provide the same functionality to students.

Please note that an instructor can see a history of all messages that were sent with the Quickmail block. Also, all future communication (replies) happen outside of the CLE, and via standard email. So if you want the conversation to be visible to a wider audience, you will need to use a forum.

For a full description of the Quickmail block and step by step instructions, please refer to the Quickmail document in our Support Center.

Good luck, and don’t forget to leave a comment below to let us know what you think of the new Quickmail block!

Categories: Convergence

Just Send Me a Signal: Encrypted Communication, Whether or Not You’re a Spy

Mobilized - Thu, 2015-04-16 16:15

How worried should I be about my privacy?  While this question is not yet keeping me up at night, it’s been on my mind more in the past year than ever before. Privacy online, over email, and in a social media context is one thing, but what about the privacy of my personal communications say over the phone or via text message? Considering how startled I am when I actually get a phone call shows how little I use the phone to talk to anyone anymore. I’m more concerned about privacy over text messaging. This led me to explore what I can do to protect the privacy of my messaging on mobile devices, specifically my iPhone. I heard about an open source app called Signal offered by Open Whisper Systems and decided to check it out.

Why is it important?

There are a lot of ways to think about privacy in 2015. Ever since Edward Snowden, former contractor to the U.S. National Security Agency, leaked documents which revealed global surveillance programs run by the NSA, it’s been hard not to wonder about potential impact on our daily lives. If nothing else, Snowden triggered a tide of growing public awareness regarding the extent to which mass surveillance (and secrecy about surveillance) is de facto. How do we balance national security against information privacy?

I’m not a spy. I’m not engaged in illegal or illicit activity. Nor am I generally a paranoid person. My use of messaging is pretty average, nothing anyone would be surprised by, so why should I care if the government is listening?

This is precisely the mindset Glenn Greenwald seeks to challenge, this idea that even people who are uncomfortable with mass surveillance believe there’s no harm in it for them because they’re not doing anything wrong, not doing anything they need to hide. Only people engaged in bad acts have a reason to hide. Right? Privacy is no longer even a “social norm,” according to Mark Zuckerberg, CEO of Facebook.

The trouble is, “when somebody knows that they might be watched, the behavior they engage in is vastly more conformist and compliant… people, when they’re in a state of being watched, make decisions not that are the byproduct of their own agency but that are about the expectations that others have of them or the mandates of societal orthodoxy.”

transcript link

If we assume we’re being watched, whether or not we care, a good case can be made that this is the ultimate in societal control. “Mass surveillance creates a prison in the mind.” That’s no way to live as individuals, or as citizens. What freedoms—even just of the mind—are being eroded gradually, perniciously, in our day-to-day use of technology, and what are the costs (now and in the future)? I find these questions seriously interesting to consider.

As Greenwald says, we all need “to go somewhere where we can think and reason and interact and speak without the judgmental eyes of others being cast upon us.”

If you decide you’re willing to render yourself harmless, “sufficiently unthreatening to those who wield political power, then and only then can you be free of the dangers of surveillance. ”

Okay, so let’s see what Signal is about.

Why choose Signal?

Signal started out as an encrypted calling app for iPhones and iPads. The new version, Signal 2.0, adds encrypted text messages using a protocol called TextSecure. Users can communicate via voice or text securely because Signal employs end-to-end encryption. The goal is for Signal to be “a unified private voice and text communication platform for iPhone, Android, and the browser.”

One persuasive argument for its use is that the code is open source. The Intercept makes the additional argument of consistency, particularly for iPhone users:

Signal is also one special place on the iPhone where users can be confident all their communications are always fully scrambled. Other apps with encryption tend to enter insecure modes at unpredictable times — unpredictable for many users, at least. Apple’s iMessage, for example, employs strong encryption, but only when communicating between two Apple devices and only when there is a proper data connection. Otherwise, iMessage falls back on insecure SMS messaging. iMessage also lacks forward secrecy and inspect-able source code.

After testing it for a couple of weeks with several contacts, I can say it works fairly well. It’s slightly glitchy, more basic (with fewer features) and not as elegant as iMessage. Not bad, but not awesome, which I’ll get back to at the end. First, a few observations.

Once you download Signal and allow it access to your contacts you can start messaging with someone who has Signal, but here’s the rub: they have to find you, you can’t locate them.

Notifications do not reveal who sent you a message and so you have to open the app to find out.

You have to turn sound on in your iPhone’s Settings in order for Signal to work. If you turn sound off, you’ll get an error message.

There is often a very slight delay in sending a message, and a longer delay when sending an attachment. Frequently the delay is so long the error message “Attachment is downloading” displays.

[oh, and the attachment which took so long to download? Not a dick pic.]

Ahem. Otherwise, the process for taking pics, accessing the camera roll and attaching is quite similar to iMessage.

If you want to message with more than one person at a time, you have to name the group. I created one called “ladiez” for a group including myself and my friends Michele and Kimberly.

The in-app calling feature doesn’t work, and I can’t figure out why. Each time, I get a screen that displays “Connecting…” but the phone just continues to ring.

You can download the Signal app and start using it from anywhere, say for example a sailboat in the middle of the Caribbean.

To Signal or not to Signal?

I think my answer is Not, for now, though it was a fun experiment and I’ll keep the app on my iPhone. Maybe I’ll use it occasionally for more uh…sensitive content. There was definitely something sneaky feeling about it, which I kind of enjoyed, as did those I enlisted to help test it out. I can say it does make me feel more secure—and yeah, potentially more daring—to know Signal and a growing number of other tools for encryption are out there. To know people are doing something about the various ways in which our privacy is at risk.

Links for further exploration
  1. Encryption Works: How to Protect Your Privacy in the Age of NSA Surveillance
  2. The Great Sim Heist: How Spies Stole The Keys To The Encryption Castle
  3. As crypto wars begin, FBI silently removes sensible advice to encrypt your devices
  4. As encryption spreads, U.S. grapples with clash between privacy, security
  5. Stop Taking Dick Pics, But Not Because of the NSA (SFW)
Categories: Mobilized

Happy National Library Week!

Brought to Light Blog - Wed, 2015-04-15 10:25

In observance of this lovely celebratory week, we bring you a few images of UCSF Library staff and librarians in their natural habitat from the 1950s.

 

Photograph collection, Medical Sciences Building – The Library

Above, the entrance way to the old UCSF Library, in the Medical Sciences building, in 1959. Check out our previous post that expands a bit on the history of that library.

 

Photograph collection, Medical Sciences Building – The Library

Tidying the current periodicals section in the 1950s.

 

Photograph collection, Medical Sciences Building – The Library

Librarians of the Catalog Department (note card catalogs in the background) in the fall of 1958.

 

Categories: Brought to Light

Lecture now online – The Forgotten Epidemic: HIV/AIDS in Women and Children

Brought to Light Blog - Thu, 2015-04-09 10:12

The lecture The Forgotten Epidemic: HIV/AIDS in Women and Children given by Dr. Arthur Ammann in the UCSF Library on February 26th is now available free online.

Beginning in 1981 researchers at UCSF defined some of the most important features of the emerging AIDS epidemic – the cause of AIDS, the clinical features of AIDS, populations at risk for HIV infection, methods to prevent and treat HIV, and discovery of HIV. Working closely with community activists, advocates, scientists and policy makers, UCSF distinguished itself as a model of successful collaboration. The first discovery of AIDS in infants and children and blood transfusion associated AIDS at UCSF were instrumental in defining the extent of the epidemic. The scientific advances in HIV/AIDS that occurred over the next two decades were remarkable resulting in the near eradication of HIV in infants in the US and transforming an acute and fatal infection in adults to a chronic and manageable one. But even as these advances occurred benefiting many millions of people worldwide, women and children were too often excluded, resulting in a global epidemic that is now composed of over 50% women and children and a secondary epidemic of AIDS-related orphans that numbers in the tens of millions.

Please use this link to view Dr. Ammann’s presentation in full.

About the UCSF Archives & Special Collections Lecture Series
UCSF Archives & Special Collections launched this lecture series to introduce a wider community to treasures and collections from its holdings, to provide an opportunity for researchers to discuss how they use this material, and to celebrate clinicians, scientists, and health care professionals who donated their papers to the archives.

Categories: Brought to Light

1920s Nursing Uniforms from the “Aristocrat of Uniforms”

Brought to Light Blog - Tue, 2015-04-07 08:51

Check out the newest line of nursing uniforms from Bob Evans, the “Aristocrat of Uniforms,” circa 1925!

Cover of Bob Evans nursing uniform catalog, circa 1925, MSS 2013-4

These illustrations come from a catalog created by Bob Evans Uniforms. The catalog was sent to Dr. Hendrik Belgum, founder of the Grande Vista Sanatorium, in 1925. The sanatorium, located near Richmond, California, treated patients with a variety of mental and physical conditions. Belgum regularly received promotional material from pharmaceutical and medical equipment companies like Bob Evans.

Alongside the catalog’s illustrations are claims regarding the company’s quality and craftsmanship. The back cover even notes that the uniforms are made in “sunlit, cheerful and sanitary workrooms by expert sewers.”

Hope you enjoy these uniforms guaranteed to be “the nurses’ pride and pleasure.” To see more material from Dr. Belgum’s sanatorium, take a look at the Grande Vista Sanatorium collection, MSS 2013-4.

Categories: Brought to Light

Getting RefWorks’ Write-n-Cite to Work on the Mac

In Plain Sight - Mon, 2015-04-06 13:48

If you’re using Write-n-Cite/ProQuest for Word on a Mac with the Mavericks or Yosemite operating systems you may have trouble getting it to format your bibliography. You can easily fix this by downloading and installing Java 6 from the Apple website before you download Write-n-Cite.

There is also a link from the Write-n-Cite download page in your RefWorks account:

Categories: In Plain Sight

The Library’s Pop-Up Consultation Services

In Plain Sight - Mon, 2015-03-30 14:19

Maybe you’ve researching a health topic but can’t seem to find relevant papers in PubMed and are too busy to make a regular appointment with an export searcher. Or, you’re having trouble using reference management software such as EndNote or Zotero. Perhaps you want advice on which tools to use for data management.

UCSF Library’s “pop-ups’ are regularly held informal consultation sessions for faculty, students and staff where you can just drop in and get help with a variety of research questions. Current topics include:

  • PubMed & Finding Information
  • Reference/Citation Management
  • Pivot: Finding Funding Opportunities & Research Collaborators
  • Bioinformatics for Biologists
  • NIH Public Access Policy & UC Open Access Policy

Pop-Ups are currently held at Mission Bay, in Mission Hall’s “The Hub.”

Click here for more information and Pop-Up schedule.

 

Categories: In Plain Sight

Collections in the Media

Brought to Light Blog - Mon, 2015-03-30 09:31

We’re proud to tell you about two new documentaries that used material from our collections and are hitting screens big and small near you.

Ken Burns’ new 3-part documentary, Cancer: The Emperor of All Maladies, premieres on PBS tonight, March 30. The film “examines cancer with a cellular biologist’s precision, a historian’s perspective and a biographer’s passion. The series artfully weaves three different films in one: a riveting historical documentary; an engrossing and intimate vérité film; and a scientific and investigative report.” It’s based on the book written by physician and oncologist Siddhartha Mukherjee and published in 2010, described as a “biography of cancer.”

[Note for UCSF Library fans: Mukherjee is married to Sarah Sze, the artist who created the mirror polished stainless steel sculpture in the front stairwell of the Parnassus library.]

 

The film Merchants of Doubt, by the filmmakers of Food, Inc., is now playing in theaters in San Francisco (and elsewhere). It’s “the troubling story of how a cadre of influential scientists have clouded public understanding of scientific facts to advance a political and economic agenda.” The team was on-site for several days, interviewing UCSF Professor Stan Glantz in our reading room and filming in the vault.

 

Let us know if you’re able to see either film! What did you think?

And, of course, contact us anytime via our online contact form to submit a question or comment. You can also email us directly at libraryarchives@ucsf.edu.

Categories: Brought to Light

Ember CLI, Heroku, and You

CKM Blog - Mon, 2015-03-23 10:15

A disclaimer: This is not for use in production. Doing this for a production app would be a bad decision.

The problem: Developers on the Ilios Project need to be able to share their changes with other team members. While it is possible to deploy a static Ember CLI app nearly anywhere, we want to include our mock API so everyone is looking at the same data.

The solution: Use Heroku to host an Ember CLI application running its built in Express server.

Start by reading Heroku’s excellent Getting Started in NodeJs documentation. Make sure you set up a demo app as instructed.

Now lets create a branch and setup your own Ember CLI app.

cd [YOUR APP DIRECTORY] git checkout -b heroku heroku create [whatever-name-you-want]

You will now have a Procfile in your apps root directory. Change the contents to:

web: ember serve --port $PORT --live-reload=false

This will tell Heroku how to start your Ember CLI app using the port of their choice, and to switch off live-reload.

Next we need to insure that npm will install bower for us.

npm install bower --save-dev

Then we have to modify our package.json to run bower install after npm install. Do this by adding "postinstall": "./node_modules/bower/bin/bower install" to the scripts section.

"scripts": { "start": "ember server", "build": "ember build", "test": "ember test", "postinstall": "./node_modules/bower/bin/bower install" },

We want to make sure npm installs all of our development dependencies for us. Including Ember CLI itself, this is done by setting a configuration variable on Heroku.

heroku config:set NPM_CONFIG_PRODUCTION=false

That should do it. Commit your changes and push your branch to Heroku. If everything works, merge the branch into master.

# git add Procfile package.json # git commit -m "Our heroku setup" # git push heroku heroku:master

Enjoy!
@iam_jrjohnson

Categories: CKM

Moodle MOOC Videos

Convergence - Fri, 2015-03-20 12:41

Do you know that Moodle, the system that powers the UCSF CLE is used by other universities and training providers around the world?

For the second consecutive year, Moodle has offered a MOOC (massively open online course) for the millions of global Moodle users. Although the 2015 MOOC has come to an end, Moodle has made all of the instructional videos available on YouTube.

Click to view the 38 Moodle videos available on YouTube:

While the version of Moodle used in the MOOC videos may look a little different than the UCSF CLE, the underlying tasks and workflows are going to be very similar. Watch videos on topics ranging from editing course sections to managing the Moodle gradebook.

Please note the videos use Moodle 2.8, while the UCSF CLE currently uses Moodle 2.6. Some features and functionality shown in the videos may not be available in the CLE.

Have questions about the Moodle MOOC videos? Contact the Learning Technologies Group.

Image Credit: Moodle Trust

Categories: Convergence

Women’s History Month – Dr. Florence Nightingale Ward

Brought to Light Blog - Tue, 2015-03-17 08:49

Continuing our look at talented and trailblazing women, we’re highlighting the work of homeopathic physician Florence Nightingale Saltonstall Ward (1860-1919).

Illustration of Ward from the San Francisco Chronicle, July 11, 1895. MSS 2011-08, box 1

Ward was a prominent San Francisco surgeon, obstetrician, and gynecologist from 1887 to her death in 1919. She dedicated her life to providing safer, more accessible medical care for women and developing techniques that made childbirth less dangerous.

Ward received medical training from a number of hospitals and schools in Europe and the United States, including California’s foremost homeopathic institution, Hahnemann Medical College of the Pacific. She later served as Professor of Obstetrics at Hahnemann and held leadership positions in local and national organizations, including becoming vice president of the American Institute of Homeopathy. In 1915, Ward became the second woman to be elected to the American College of Surgeons, an appointment that recognized her many contributions to the fields of gynecology and surgery.

Ward’s diploma from the New York Polyclinic Medical School, 1888. MSS 2011-08, oversize box 1

Ward built her own sanatorium exclusively for women in San Francisco between 1907 and 1910. She employed an all-female staff and provided unique career opportunities for women with professional medical training.

Invitation to Ward’s sanitarium, circa 1910. MSS 2011-08, box 1

Ward’s practice blended conventional medical techniques with homeopathic remedies and treatments. Homeopathy was developed by Samuel Hahnemann in the early 19th century. His system was based on the theory that a substance that causes certain symptoms in a healthy person will cure those symptoms in a sick person. Ward was likely drawn to homeopathy in part because the field provided more opportunities for women than conventional medical practice. For instance, homeopathy schools regularly accepted female students while medical schools routinely denied women applicants because of their gender. Homeopathic professional organizations also welcomed women’s participation. As women struggled to find a place in the American Medical Association, Ward and other women helped lead the American Institute of Homeopathy and delivered papers at major homeopathy conferences.

Ward’s list of symptoms and their homeopathic treatments, ca. 1890. MSS 2011-08, upstairs vault

At UCSF, we house the Florence Nightingale Ward papers, MSS 2011-08, and a collection of rare homeopathy material. Ward’s papers include homeopathic medicine kits used by her in the late 19th century. Take a look inside one monogrammed kit below. Many of the vials contain substances still used in homeopathic remedies today!

Ward’s monogrammed homeopathic medicine kit, circa 1890. MSS 2011-08, upstairs vault

Ward’s monogrammed homeopathic medicine kit, circa 1890. MSS 2011-08, upstairs vault

Ward’s monogrammed homeopathic medicine kit, detail, circa 1890. MSS 2011-08, upstairs vault

Ward’s monogrammed homeopathic medicine kit, detail, circa 1890. MSS 2011-08, upstairs vault

Categories: Brought to Light

New TCA Archivist

Brought to Light Blog - Tue, 2015-03-17 08:30

David Krah

David Krah joins UCSF to work on processing collections in the Tobacco Control Archives. He will work alongside David Uhlich on processing state reports on tobacco control policy as well as the balance of unprocessed collections held in the Tobacco Control Archives.

David has a Masters Degree in Library and Information Science from San Jose State University, with a concentration in Archival Studies. He has worked on archival projects with the California Historical Society, the San Francisco Public Library, San Francisco Public Utilities Commission, the Road & Track Magazine collection at Stanford University, and previously worked on the Ira Herskowitz papers and Lawrence Crooks Radiologic Imaging Laboratory records at UCSF.

He is a native Californian with interests in California history and transportation and livability issues. He enjoys composing and performing experimental and song-form music and cycling jauntily. He lives in San Francisco with his wife Nia and newborn daughter Thalia.

Categories: Brought to Light

Women’s History Month – Ellen Brown

Brought to Light Blog - Thu, 2015-03-12 09:03

In honor of Women’s History Month, we’re spotlighting a few of the many talented and trailblazing women who have been important in the history of UCSF and you may not have heard of before.

Today, read a little about the remarkable life and career of Ellen Brown, MD. We are fortunate to have Brown’s manuscript collection, MSS 87-42, and her oral history in the UCSF Archives & Special Collections.

Ellen Brown was born in San Francisco in 1912. She and her older brother Fred were raised by her parents, Warner and Jessie Brown, in Berkeley. Jessie was a high school teacher and botanist and Warner was a professor of psychology at UC Berkeley. Fred died at the age of 16 of respiratory complications of polio. His death had a lasting impact on Brown– she dreamed of becoming a doctor as a child.

Ed Fong, Tesauro, and Brown in June, 1939.

Brown attended University High School in Oakland and went on to study at the University of California Berkeley, graduating with a bachelors degree in 1934. She continued to the UC Medical School’s San Francisco campus and graduated with her medical degree in 1939. In a class of  63 students, she was one of a handful of women.

Following graduation, Brown became chief resident under William J. Kerr, UC Chair of Medicine, from 1939-1943. The two worked closely for years– prioritizing cardiovascular research at UCSF. Brown helped to found the , which opened in 1958. Kerr was instrumental in laying the groundwork for the Cardiovascular Research Institute (CVRI), procuring the space on the 13th floor of Moffitt Hospital and funding from both UCSF and the National Heart Institute. The CVRI opened in 1958 with Brown as a co-founder and, later, a senior staff member. (Check out some of the CVRI’s milestones here.)

Ellen Brown at Harvard Medical School, 1946

Brown’s academic appointment at UCSF began with clinical instructor, 1943-1944, moved to associate professor, 1946-1959, and became professor of medicine in 1959. In 1944-1946 she was a Commonwealth Fund fellow in the Department of Physiology at Harvard Medical School (see photo above) and in 1958 she was a Guggenheim Fellow at Oxford University.

Brown operated a lab on campus for peripheral vascular research though the 1960s and 1970s. Concurrently, she worked on improving teaching techniques in predoctoral medical classes, initiating the “Introduction to Clinical Medicine” course and later serving as a residency evaluator for the School of Medicine.

This quote, from Brown’s oral history, demonstrates her zeal for education, enthusiasm for change in curriculum, and sense of humor: “The wonderful thing was how interested all these people in the non-medicine departments were. An ophthalmologist would sit down with a bunch of absolute nerds, and come and do that, four or five times, and teach them. The hardest thing to learn to do is to see in an ophthalmoscope. It is for most doctors. It’s one of the last things you feel comfortable about. That and a pelvic exam, I guess.”

Over the course of her illustrious career, Brown’s research interests included capillary pressure and permeability, blood volume and vascular capacity, cardiac failure, cardiac complications of pregnancy, and peripheral circulation in relation to pain syndromes and vascular diseases.

Brown on Edgewood Ave behind the CVRI on May 29, 1960.

When Brown officially retired from UCSF in 1979, she became a professor emeritus of medicine. Ten years later, in 1989, Brown received UCSF’s highest honor, the UCSF Medal, for outstanding personal contributions to the University’s health sciences mission.

Brown and Francis Sooy, UCSF Chancellor 1972-1982, at the time of her retirement.

 

Brown passed away in October of 2006 at the age of 96. At that time, she gifted over $100,000 to the UCSF School of Medicine for the improvement of teaching for medical students.

Browns’ numerous contributions over the course of fifty plus years can still be felt today– through her impact on cardiovascular research as well as her in her insight and refinement of medical education.

Contact us if you have any questions or would like to learn more. And please don’t hesitate to use the calendar on the right to make an appointment to come in and use the collections!

Categories: Brought to Light

Tobacco Control Archive Processing Project

Brought to Light Blog - Tue, 2015-03-10 08:30

David Uhlich

The UCSF Archives recently received funding from the Center for Tobacco Control Research and Education to catalog and process the Tobacco Control Archive collections and in particular the state reports materials that were compiled by Dr. Stanton Glantz’ research group while completing detailed histories of tobacco control policymaking and efforts by the tobacco industry to thwart these policies in 29 states.

Today I would like to introduce David Uhlich who just joined the archives team and will be working on the TCA processing project.

David holds a Master’s degree in Library and Information Science from San Jose State University, and for the past 6 years has worked for the Bancroft Library at the University of California, Berkeley. At the Bancroft, he was primarily responsible for processing political collections, and most recently led the project to process the papers of Governor Edmund G. “Pat” Brown.

Prior to this, David worked as an archivist at the Water Recourses Center Archives, the Charles M. Schulz Museum and Research Center, and the Tomales Regional History Center. He is a Certified Archivist and active member of the Society of California Archivists, where he currently serves as the Northern California chair of the Site Selection Committee.

David is a lifelong Californian, and for the past 8 years has lived in Marin County with his wife and two very large dogs.

Categories: Brought to Light
Syndicate content