16888
Comment:
|
11138
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
= Following Mozilla Firefox's New Development Channels with Ubuntu = {{{#!text_markdown Shortly after Firefox 4's release, Mozilla announced the [move to a channel development model][channel-announcement], à la Chrome. On Windows and Mac, builds from these channels update themselves; what about on Linux, where both self-updating software and software outside management of the package manager (i.e. manually installed) is taboo? If you use Debian, Mike Hommey and the Debian Mozilla Team's [mozilla.debian.net][debmoz] provides packages for the Firefox Stable, Beta, Aurora, and Nightly channels. Be aware that these packages are still labeled [Iceweasel][iceweasel], i.e. they lack the official Firefox branding. These packages work on Ubuntu should you want to use them. [channel-announcement]: https://developer.mozilla.org/devnews/index.php/2011/04/07/new-development-channels-and-repositories-for-rapid-releases/ [debmoz]: http://mozilla.debian.net/ [iceweasel]: http://en.wikipedia.org/wiki/Iceweasel What if you want something more Ubuntu-specific? <abbr title="Personal Package Archive">PPA</abbr>s following each of the channels exist, but they're not obvious to find. Nightly builds of Firefox trunk, formerly known as "Minefield" builds, are available in the [Ubuntu Mozilla Daily PPA][firefox-nightly]. Remember, Nightly builds receive little testing (e.g. can they build without errors?) and thus may crash frequently. Start using these builds by pasting the following into your terminal: <pre><samp>sudo add-apt-repository ppa:ubuntu-mozilla-daily/ppa sudo apt-get update && sudo apt-get install firefox-trunk </samp></pre> Firefox's new build channel, Aurora, has builds that have had more testing than those from Nightly. Builds from the Aurora channel are available from the [firefox-aurora PPA][firefox-aurora], which you can use with: <pre><samp>sudo add-apt-repository ppa:ubuntu-mozilla-daily/firefox-aurora sudo apt-get update && sudo apt-get install firefox </samp></pre> The Beta channel, containing builds that received more testing than Aurora and are (mostly) ready to be released, is available in the [firefox-next PPA][firefox-beta]: <pre><samp>sudo add-apt-repository ppa:mozillateam/firefox-next sudo apt-get update && sudo apt-get install firefox </samp></pre> Lastly, if you want to follow the Stable channel, consider sticking with what's available in Ubuntu's normal repositories — if you really want to be testing the next Firefox release, try the Beta channel above. If you still want the "bleeding edge" of stable, there's the [firefox-stable PPA][firefox-stable], which will go away soon, and [Ubuntu's Mozilla Security Team PPA][firefox-security], within which packages only remain until they are moved into the main archive. [firefox-nightly]: https://launchpad.net/~ubuntu-mozilla-daily/+archive/ppa [firefox-aurora]: https://launchpad.net/~ubuntu-mozilla-daily/+archive/firefox-aurora [firefox-beta]: https://launchpad.net/~mozillateam/+archive/firefox-next [firefox-stable]: https://launchpad.net/~mozillateam/+archive/firefox-stable [firefox-security]: https://edge.launchpad.net/~ubuntu-mozilla-security/+archive/ppa Notice that the Aurora, Beta, and Stable channels contain packages of the same name: "firefox"; this means: 1. You can only install Firefox from one channel at a time. 2. They all will use the same profile and profile registry. You'll need to manually switch profiles or alter shortcuts to launch the desired profile if you desire different. Packages in the Nightly channel, however, are named firefox-trunk and can be co-installed alongside builds from another channel. To switch to another channel, disable the source with [Ubuntu's Software Properties][software-properties] or delete the appropriate file in /etc/apt/sources.list.d/: <pre><samp>sudo rm /etc/apt/sources.list.d/ubuntu-mozilla-team-firefox-aurora*list sudo rm /etc/apt/sources.list.d/mozillateam*list </samp></pre> Run one of the above set of commands to switch to a desired channel. [software-properties]: https://help.ubuntu.com/community/Repositories/Ubuntu Hopefully, with easy-to-use PPAs available for each of Firefox's build channels, more people, including you, will test these builds. Go forth and test! }}} = Michael Madsen's Into Eternity = |
= Downtown Desert Yoga review = My first experience w/ Bikram yoga (AKA hot yoga) was at DDY. I had taken a few non-heated classes before, I’ve been at both the old studio on Main Street and the new one on Alameda, and while I liked the old place better the new one has grown on me. The heating/cooling system is significantly better—it gets hotter for the hot yoga classes and cooler for non-heated classes. There are hardwood floors throughout, and you don’t feel gross walking barefoot throughout the studio. = Virtualenv with Python 3.3's venv = {{{#!text_markdown However, Python 3.3's venv module is easily used to create custom venv setup scripts. Vinay Sajip has done just that with [pyvenvex.py](https://gist.github.com/vsajip/4673395). Use the script as you would }}} = ThinkPad T530 first thoughts = {{{#!text_markdown No indicator lights for AC power, battery status, or charging status on front. No caps lock indicator (only noticed while in Windows). Large, bulky. But surprisingly lightweight, compared to tablets like iPad or Nook Color. Hate the lack of grouping on function keys, no color on Enter, Function keys, or escape. Cannot feel bumps on F and J keys. Really fast wake from suspend. Took Linux disk from X61 tablet, installed into T530 w/out problems! Turned off UEFI and enabled legacy boot. Did not need to reconfigure trackpad, screen, etc. tp-smapi-dkms does not work. Missing being able to set battery charging thresholds, etc. }}} = An Albuquerque Code 66 2012 debrief = {{{#!text_markdown A couple months ago, I participated in Albuquerque's Code 66 Hackathon. [What's a hackathon?][hackathon] My one sentence definition: a weekend where the goal is to go from idea to demoable product (usually a <abbr title="Minimum Viable Product">MVP</abbr>, but not exactly) as quickly as possible. One of the progressive civic movements in the past decade is that of civic open data. That is, data about your city & government should be freely accessible for use by citizens, who are free to do. After all, it is citizen tax dollars that pay for it! This June, the city of Albuquerque was one the latest cities in the country to start its open data initiative (Dear Las Cruces, Ruidoso, Roswell, El Paso, et al—what exactly are all of you doing?), and they've [published several open data sets][abqdata]. Oh, and if you figure out a creative way to use this data, Albuquerque has a [$30,000 apps challenge][abq-apps] with, as you might have guessed, a $30,000 grand prize! At the hackathon this past summer, [Zerek Welz](http://zerekwelz.com/), [Chris Huges](http://www.linkedin.com/in/cfhughes/), and myself met at the event and eventually came up with [Where's the bus!? Albuquerque](http://abqwtb.com/). [hackathon]: https://en.wikipedia.org/wiki/Hackathon [abqdata]: http://cabq.gov/abq-data [abq-apps]: http://cabq.gov/abq-data/apps-competition }}} = A week with Verizon's HomeFusion = {{{#!text_markdown Living in the tree-less high desert, I have [line of sight][los] to two different cellular towers, one to the direct north and one to the south–southeast. [los]: http://en.wikipedia.org/wiki/Line-of-sight_propagation }}} = Generate entropy for your server = Discuss ekeyd, haveged, etc = How many times a week do I use such and search search engine? = Write post here. = Backing up your Identi.ca account = {{{#!text_markdown To backup [my Twitter account][twitter], I use [ThinkUp][thinkup], which also happens to backup my now-dormant Facebook account. Take that, corporate data silos! [twitter]: https://www.twitter.com/SamatJain [thinkup]: http://thinkupapp.com/ Because of the recent (late-2011) downtime on Identi.ca, and with the release of StatusNet 1.0, I figured now was as good a time as any to seriously setting up my own federated µ-blogging instance. With the heavy focus on federation and [autononous Web principles][franklin-street-statement], I always assumed that it'd be both easy & obvious to get data back out of Identi.ca. [franklin-street-statement]: http://autonomo.us/2008/07/franklin-street-statement/ One word: meh. Identi.ca has a [backup feature][identica-backup], but it [doesn't work quite right][identica-backup-bug]. For example, I could only fetch dents going back 4 months. [Preview of changes to Identi.ca | StatusNet](http://status.net/2013/01/09/preview-of-changes-to-identi-ca) [identica-backup]: http://identi.ca/main/backupaccount [identica-backup-bug]: http://status.net/open-source/issues/3296 }}} = Handling times on the Web in Python w/out headaches = Describe using dateutil, W3C CDTF, etc {{{#!text_markdown <abbr title="Comon Date-Time Format">CDTF</abbr> from the <abbr title="World Wide Web Consortium">W3C</abbr> }}} RFC 3339 = Camera at a mountain Webcam on the Web = = Theming Apache's mod_autoindex = = Doing WHATEVER URLs the right way w/ jQuery Mobile = = A JSON proxy for the OpenStreetMap API = [[http://gis.638310.n2.nabble.com/JSON-output-for-xapi-td6483673.html|Developer Discussion - JSON-output for xapi]] = Multiprocess in modern browsers = == Internet Explorer == First multi-process browser? MSIE4? == WebKit == * http://trac.webkit.org/wiki/WebKit2 * WebKit and WebKit2 from a Qt perspective: http://blog.forwardbias.in/2011/08/on-webkit-and-webkit2.html == Firefox == * http://timtaubert.de/2011/08/firefox-electrolysis-101-part-1/ = Getting through Python 2's Unicode problems = * [[http://farmdev.com/talks/unicode/|Unicode In Python, Completely Demystified]] * Force Unicode for all strings w/ Python 2.6+: [[http://docs.python.org/py3k/howto/pyporting.html#from-future-import-unicode-literals]] * Instead of built-in open, use codecs.open = Color on the Console = dstat grep htop pydf == less == * [[http://www.reddit.com/r/linux/comments/knxz9/syntax_highlighting_in_less_ive_been_using_less_a/|Syntax highlighting in less - I've been using less a long time... why this has never occurred to me before today? : linux]] [[http://superuser.com/questions/385768/less-emulate-a-tty-to-preserve-piped-color-output|bash - less emulate a TTY to preserve piped color output - Super User]] = Movie Review: Michael Madsen's Into Eternity = |
Line 71: | Line 162: |
Spent nuclear fuel Low-level nuclear wastes include things such as clothing, plant construction materials (e.g. concrete) and machinery |
The movie skimps on technical details, some of which I will talk about here. Nuclear waste can be divided into two levels: high-level and low-level. Low-level nuclear wastes include things such as clothing, plant construction materials (e.g. concrete) and machinery that have come in contact with anything nuclear. High-level nuclear wastes include spent nuclear fuel and chemicals used to process and create nuclear fuel. The movie focuses on spent nuclear fuel, which in most nuclear power plants are things called fuel rods. Fuel rods |
Line 85: | Line 178: |
= Android 3 Honeycomb, free as in…? = http://www.h-online.com/open/news/item/No-Honeycomb-open-source-till-after-Ice-Cream-Sandwich-1241414.html |
|
Line 103: | Line 192: |
= Why I use Firefox 4 Mobile = {{{#!text_markdown A couple weeks ago, [Mozilla released Firefox 4 Mobile][ff4mobilerelease] (née Fennec) for both Android and Maemo. [ff4mobilerelease]: http://blog.mozilla.com/blog/2011/03/29/mozilla-launches-firefox-4-for-android-allowing-users-to-take-the-power-and-customization-of-firefox-everywhere-2/ I've had an Android phone since 2008 and honestly, I've never browsed the web on my phone as much as I have in the past few months when I started using Firefox 4 Mobile. It really is that much better! Here are my thoughts (focused on the Android version) on why. ## Sync ## Firefox 4 Mobile's number 1 killer feature is [Sync][sync], which syncs tabs, logins, browser history, and bookmarks across multiple devices. The most useful of these are logins and browser history. [sync]: http://www.firefox.com/sync It's a *complete* pain to type user names and passwords on mobile keyboards, exacerbated personally since I practice good security and use a different password for each site on the web. Because Firefox Sync makes available on my phone all the passwords I've saved on my desktop, I never need fumble entering or remember anything anymore. I use the web quite a bit (who doesn't?), proof of which is my 15 MiB history file. Sync makes available that same browsing history, everywhere. Having your browser history available to do simple things like coloring visited links purple really makes a difference (e.g., think about looking through apartment listings on Craigslist). Having history available also powers Firefox 4 Mobile's Awesome Bar. I don't need to remember exact URLs anymore, or rely on a search engine—I can just start typing a keyword and Firefox's Awesome Bar automatically searches URLs and page titles of pages I've visited, just like it does on the desktop. As a freedom-loving, free and libre open source software advocate, another bit about Sync I love is that it is an [autonomous web service][autonomous]. That is, you can [download the server-side component of Sync][syncserver] and run it yourself, should you not trust Mozilla. [autonomous]: http://autonomo.us/2008/07/franklin-street-statement/ [syncserver]: http://hg.mozilla.org/services/minimal-server/ Google has a Sync-like feature in Android 3.0 for its built-in web browser and Chrome for your desktop, but so far nothing is available for anyone stuck on older versions of Android. It also isn't autonomous—you're locked into trusting Google. ## HTML5 ## Firefox 4 Mobile has much better HTML5 support, in the sense it supports more [New & Exciting Web Technologies][newt] (<abbr title="New & Exciting Web Technologies">NEWT</abbr>), such as CSS3, SVG, and new Javascript APIs. [newt]: http://www.brucelawson.co.uk/2010/meet-newt-new-exciting-web-technologies/ Firefox has dropped vendor-specific prefixes for many CSS3 properties, including border-radius, box-shadow, text-shadow, etc. All in all, it makes your CSS that much more clean. There's support for SVG, only [recently supported in Android 3.0][androidsvg]. [androidsvg]: http://code.google.com/p/android/issues/detail?id=1376 There's support for [notifications][notifications] via a proprietary API. Recently landed in Chrome 10, it's still missing (AFAIK?) in Android 3.0, even with 3.0's rich notifications support. [notifications]: https://developer.mozilla.org/en/DOM/Displaying_notifications The iPhone has had multi-touch Javascript events (think pinch-to-zoom, essential for mapping widgets) since its debut, but [multi-touch support][androidmt] and support for such events is missing from Android, even though Android was introduced much later. Firefox 4 Mobile has had [multi-touch support][ffmt] since last year, though it does not support gestures, like the pinch-to-zoom event (patent concerns?). Even without gestures, nothing stops you from implementing gestures yourself. Firefox Mobile also is [leading the way][fftes] in supporting the (draft) [W3C TouchEvents specification][w3cte]. [androidmt]: http://code.google.com/p/android/issues/detail?id=11909 [ffmt]: http://hacks.mozilla.org/2010/08/firefox4-beta3/ [fftes]: http://digdug2k.wordpress.com/2011/05/02/touchevents/ [w3cte]: https://dvcs.w3.org/hg/webevents/raw-file/default/touchevents.html A good overview of the other HTML5 features Firefox 4 Mobile supports is [Mozilla's HTML5 & Friends demo][mozhtml5demo] [mozhtml5demo]: https://mozillademos.org/demos/dashboard-mobile/demo.html ## Other stuff Firefox 4 Mobile also supports add-ons. While I haven't found the need for any, there are some neat ports, like [Adblock Plus Mobile][adpmobile]. Expect the [list of add-ons][listaddons] to grow quickly. [adpmobile]: https://addons.mozilla.org/en-US/mobile/addon/adblock-plus/ [listaddons]: https://addons.mozilla.org/en-US/mobile/ When Firefox 4 Mobile was in beta, Mozilla didn't do a very good job alerting people to its high system requirements. However, on release, a [supported platforms and systems requirements page][sysreq] is first and foremost. A summary: you need a phone with at least 512 MiB RAM. The official builds require an ARMv7-generation processor (or more specifically, one that supports [ARM's Thumb instruction set][thumb]), <s>but there are [unsupported builds for older ARMv6 devices][armv6builds] that have enough RAM (e.g. T-Mobile's MyTouch Slide, aka the HTC Espresso).</s> Not to gloat, but Firefox 4 Mobile for Android works great on my T-Mobile G2. [sysreq]: http://www.mozilla.com/en-US/mobile/platforms/ [thumb]: http://en.wikipedia.org/wiki/ARM_architecture#Thumb [armv6builds]: https://wiki.mozilla.org/Mobile/Platforms/Android#ARMv6_.28experimental.29 Firefox 4 Mobile's previous name was Fennec 2.0, a name I much prefer. But somewhere along the way, Mozilla decided to take a page from Microsoft's marketing playbook—home of atrocities like Microsoft Windows Live Mesh and [Microsoft Windows Server Base Operating Systems Management Pack for Microsoft Operations Manager 2005][longestmsname]. What makes it worse is disambiguating Firefox 4 Mobile for Android and Firefox 4 Mobile for Maemo means you're using 5 words for a product title. For web developers, fortunately, Firefox 4 Mobile still keeps the keyword "fennec" in its user agent screen for easy detection. [longestmsname]: http://blogs.msdn.com/b/jonathanh/archive/2005/08/05/what-s-the-longest-microsoft-product-name.aspx In my opinion, the best software keyboard for Android is [Swiftkey][swiftkey] (proprietary software, unfortunately). SwiftKey crashes when used with Firefox 4 Mobile… SwiftKey hasn't been very helpful diagnosing the problem (it <i>is</i> SwiftKey doing the crashing!) but Mozilla has [fixed the SwiftKey crash][swiftkeybug] on their own, available by Firefox 5 Mobile, if not 4.02. [swiftkey]: http://swiftkey.net/ [swiftkeybug]: https://bugzilla.mozilla.org/show_bug.cgi?id=617298 So, [go download Firefox 4 Mobile now][download] from Mozilla's landing page if you've not done so already. You can also get it from the [Android Market][market], or, if you don't or can't use the Android Market, get the [latest Firefox 4 Mobile release from Mozilla's FTP site][ftp] instead. If release versions are not bleeding edge enough for you, consider the [Nightly][nightly] or [Aurora][aurora] build channels instead. [download]: http://firefox.com/m/ [market]: https://market.android.com/details?id=org.mozilla.firefox [ftp]: http://releases.mozilla.org/pub/mozilla.org/mobile/releases/latest/ [nightly]: https://wiki.mozilla.org/Mobile/Platforms/Android#Download_Nightly [aurora]: https://wiki.mozilla.org/Mobile/Platforms/Android#Download_Aurora Also, if you're playing [Mozilla's Spark][spark], please [tag me][sparktag]! [spark]: https://spark.mozilla.org/ [sparktag]: https://spark.mozilla.org/en-US/user/tamasrepus?f=t }}} |
Downtown Desert Yoga review
My first experience w/ Bikram yoga (AKA hot yoga) was at DDY. I had taken a few non-heated classes before,
I’ve been at both the old studio on Main Street and the new one on Alameda, and while I liked the old place better the new one has grown on me. The heating/cooling system is significantly better—it gets hotter for the hot yoga classes and cooler for non-heated classes. There are hardwood floors throughout, and you don’t feel gross walking barefoot throughout the studio.
Virtualenv with Python 3.3's venv
However, Python 3.3's venv module is easily used to create custom venv setup scripts. Vinay Sajip has done just that with pyvenvex.py. Use the script as you would
ThinkPad T530 first thoughts
No indicator lights for AC power, battery status, or charging status on front.
No caps lock indicator (only noticed while in Windows).
Large, bulky. But surprisingly lightweight, compared to tablets like iPad or Nook Color.
Hate the lack of grouping on function keys, no color on Enter, Function keys, or escape. Cannot feel bumps on F and J keys.
Really fast wake from suspend.
Took Linux disk from X61 tablet, installed into T530 w/out problems! Turned off UEFI and enabled legacy boot. Did not need to reconfigure trackpad, screen, etc.
tp-smapi-dkms does not work. Missing being able to set battery charging thresholds, etc.
An Albuquerque Code 66 2012 debrief
A couple months ago, I participated in Albuquerque's Code 66 Hackathon.
What's a hackathon? My one sentence definition: a weekend where the goal is to go from idea to demoable product (usually a MVP, but not exactly) as quickly as possible.
One of the progressive civic movements in the past decade is that of civic open data. That is, data about your city & government should be freely accessible for use by citizens, who are free to do. After all, it is citizen tax dollars that pay for it!
This June, the city of Albuquerque was one the latest cities in the country to start its open data initiative (Dear Las Cruces, Ruidoso, Roswell, El Paso, et al—what exactly are all of you doing?), and they've published several open data sets.
Oh, and if you figure out a creative way to use this data, Albuquerque has a $30,000 apps challenge with, as you might have guessed, a $30,000 grand prize!
At the hackathon this past summer, Zerek Welz, Chris Huges, and myself met at the event and eventually came up with Where's the bus!? Albuquerque.
A week with Verizon's HomeFusion
Living in the tree-less high desert, I have line of sight to two different cellular towers, one to the direct north and one to the south–southeast.
Generate entropy for your server
Discuss ekeyd, haveged, etc
How many times a week do I use such and search search engine?
Write post here.
Backing up your Identi.ca account
To backup my Twitter account, I use ThinkUp, which also happens to backup my now-dormant Facebook account. Take that, corporate data silos!
Because of the recent (late-2011) downtime on Identi.ca, and with the release of StatusNet 1.0, I figured now was as good a time as any to seriously setting up my own federated µ-blogging instance. With the heavy focus on federation and autononous Web principles, I always assumed that it'd be both easy & obvious to get data back out of Identi.ca.
One word: meh.
Identi.ca has a backup feature, but it doesn't work quite right. For example, I could only fetch dents going back 4 months.
Preview of changes to Identi.ca | StatusNet
Handling times on the Web in Python w/out headaches
Describe using dateutil, W3C CDTF, etc
CDTF from the W3C
RFC 3339
Camera at a mountain Webcam on the Web
Theming Apache's mod_autoindex
Doing WHATEVER URLs the right way w/ jQuery Mobile
A JSON proxy for the OpenStreetMap API
Developer Discussion - JSON-output for xapi
Multiprocess in modern browsers
Internet Explorer
First multi-process browser? MSIE4?
WebKit
WebKit and WebKit2 from a Qt perspective: http://blog.forwardbias.in/2011/08/on-webkit-and-webkit2.html
Firefox
Getting through Python 2's Unicode problems
Force Unicode for all strings w/ Python 2.6+: http://docs.python.org/py3k/howto/pyporting.html#from-future-import-unicode-literals
- Instead of built-in open, use codecs.open
Color on the Console
dstat grep htop pydf
less
bash - less emulate a TTY to preserve piped color output - Super User
Movie Review: Michael Madsen's Into Eternity
With Chernobyl's 25th anniversary a few weeks past (ignored, for the most part, by Western media), and the Fukushima nuclear disaster fresh in everyone's minds, now is as good a time as any think about nuclear energy's role in our civilization. Into Eternity, a Finnish documentary released in 2010, takes a very unique look at the nuclear power industry, one not typically thought about. Rather than nuclear proliferation or the plants themselves, it focuses on the geologic storage of spent nuclear fuel (aka SNF), in particular, Finland's Onkalo repository.
The movie skimps on technical details, some of which I will talk about here.
Nuclear waste can be divided into two levels: high-level and low-level. Low-level nuclear wastes include things such as clothing, plant construction materials (e.g. concrete) and machinery that have come in contact with anything nuclear.
High-level nuclear wastes include spent nuclear fuel and chemicals used to process and create nuclear fuel. The movie focuses on spent nuclear fuel, which in most nuclear power plants are things called fuel rods. Fuel rods
At the moment, the US does not have a storage plan for spent nuclear fuel. There is one geologic storage site, the Waste Isolation Pilot Plant in southeastern New Mexico, but the site is relatively small and destined for storing the generation I nuclear wastes of America's nuclear weapons programs, not that of commercial reactors. A larger site, Yucca Mountain, well isolated in the Nevada Test Range (where nuclear weapons were tested for decades, and much contamination remains), was shelved in 2010 by the Obama administration, leaving America's nuclear energy industry without secure storage for its spent nuclear fuel.
Much of the topics Into Eternity touches, such as communicating the dangers of nuclear wastes stored at sites via markers and monuments, has similarly been discussed for the US' Waste Isolation Pilot Plant.
Drupal 7 upgrade post-mortem
This weekend, I upgraded Samat Says (this blog, in case you missed the memo) to Drupal 7.
For my Drupal 4.6/4.7-based site, I had created my own theme, Sands. Lack of time prevented me from porting Sands to Drupal 5 or 6, and it's unlikely it will be ported forward. I'm probably going to recreate it with one Drupal 7's many starter themes, however.
Patient care in the ICU in terms of vectors and topological spaces
Biomedical Informatics, Medicine
A few weeks ago, Timothy G. Buchman gave a talk at the Columbia DBMI weekly research seminar. During the QA session, someone asked why patients in intensive care units (ICUs) were given such “extreme” treatments, often causing them to develop new health problems and complications, keeping them in the hospital. He replied with this wonderful mathematical metaphor about patient care.
You are a point in an n-dimensional space. Each dimension is some vital sign or homeostatic attribute, e.g. blood pressure, blood glucose, temperature, etc. Homeostasis is defined a polytope in that space. As you do the various things of life, your point moves within the space defined by that polytope. For example, when you eat, your blood sugar goes up, and the point moves along in the blood sugar dimension; when you take a cold shower, your body temperature is reduced, and you move along in that dimension. Young people have a large space inside their homeostatic polytope
When you leave this homeostatic polytope, you're considered “sick.” If you travel to far from it, you die.
People who enter the ICU have points that are moving away from their homeostatic polytope. Their movement away can be represented as a vector, representing how quickly their condition is deteriorating.
Treatments in the ICU represent vectors that try to point you back towards your homeostatic polytope.