Monthly Archives: December 2008

Student loans can be dangerous

I need to quickly secure a student loan, and it looks far more complicated and dangerous than it should be. LATimes: Student loans turn into crushing burden for unwary borrowers:

…Hickey knew she would need loans to complete her degree, so she went to the campus financial aid office as a freshman. After she filled out paperwork, Brooks Institute set her up in a loan program administered by Sallie Mae, the nation’s biggest student lender.

Sallie Mae was chartered by the federal government in 1972, and most of its business is in issuing federally insured student loans. But while it may appear to be a quasi-government agency, it is in fact a for-profit company whose stock trades on the New York Stock Exchange.

Hickey ended up with $20,000 in low-interest federally guaranteed loans issued by Sallie Mae, and $120,000 in higher-interest private loans issued by Sallie Mae.

Hickey said no one explained the difference to her.

“The financial aid officer just said that my federal loans weren’t enough to pay the tuition, but that was OK because they had these great alternative loans,” Hickey said. “They made it sound so good that I didn’t ask that many questions.”

Tim Halsey, vice president of finance for Brooks Institute, declined to discuss Hickey’s case directly, citing federal privacy laws. But he said the school’s financial aid officers take great pains to explain the differences between loans and to guide students to the best deals.

“It is really to our advantage to get the loans and interest rates as low as possible,” Halsey said.

“My motivation is to get that person to come to the school, if that’s what they want to do. If I can get those costs as low as possible, it benefits us both.”

Discussion at Kevin Drum’s blog.

This loan mess is made even scarier by the fact that college costs are rising faster than income. According to the National Center for Public Policy and Higher Education, college tuition and fees, adjusted for inflation, rose 439 percent from 1982 to 2007. Median family income rose 147 percent during the same period.

Rest in peace: Bettie Page and Majel Barrett-Roddenberry

Bettie Page (April 22, 1923 – December 11, 2008)

LATimes: Bidding Bettie Page farewell:

“I was not trying to be shocking, or to be a pioneer,” Page explained in an interview years later.

“I wasn’t trying to change society, or to be ahead of my time. I didn’t think of myself as liberated, and I don’t believe that I did anything important. I was just myself. I didn’t know any other way to be, or any other way to live.”

Majel Barrett-Roddenberry (February 23 1932 – December 18 2008)

Projo Subterranean Homepage News: Voice of the Star Trek computer, Majel Roddenberry, dies at 76:

See, Gene was a fantastic storyteller, probably the best in the business. What he did was tell stories. He didn’t lay plots and ideas and things like that — he told stories. You can take any one of our stories that we use right now, put western clothes on us, stick us out in the west and they’ll work just as well — any single one of them — because they’re stories about people, they’re stories about things. And, of course, Gene had to put some of his philosophy into each one of them, but that was just his way of, really, getting past the censors. The censorship in those days was just horrible.

NYTimes on using GeoDjango

Nice work NYTimes.

Open: Represent:

We built Represent with Django, the Python web framework. Although we do most of our work with Ruby on Rails, we chose Django for this project so we could use GeoDjango, an add-on that supports geometry fields and extends the ORM to allow spatial queries.

We started with maps from New York City’s Department of City Planning showing district boundaries for City Council, State Assembly, State Senate and the U.S. House of Representatives. We used the Geospatial Data Abstraction Library, a translator library for raster geospatial data formats, through GeoDjango’s LayerMapping class to populate a PostgreSQL database extended with the PostGIS spatial extension. The geometry relationship functions provided by PostGIS allow for quick, accurate lookups to determine which legislative districts contain your address.

Represent shows you your address in relation to each of the political districts that contain it. To draw the maps of your districts, we used GEOS, a C++ port of the Java Topology Suite, an API for modeling and manipulating 2-dimensional linear geometry, via GeoDjango’s GEOS API. GEOS allows for the conversion of a geometry to KML, which can then be consumed by Google Maps.

But to do all that, we need an address: yours, hopefully, if you live in New York City. To turn that address into coordinates, we built a geocoding service based on Geo-Coder-US, the perl library that powers geocoder.us.

Christmas Eve

Spending time with family, getting ready to head home for a quiet night, ready for tomorrow.

I hope you have a happy holiday, no matter what it maybe.

May there be peace on Earth. Good will towards all.

Happy Hanukkah and Merry Christmas.

Lord, make me an instrument of Your Peace, Where there is hatred, let me sow Love; Where there is injury, Pardon; Where there is doubt, Faith; Where there is despair, Hope; Where there is darkness, Light; And Where there is sadness, Joy. O Divine Master, grant that I may not So much seek to be consoled, as to Console; To be understood as to Understand; To be loved as to Love; For it is in Giving that we receive; It is in Pardoning that we are pardoned; It is in dying that we are born to eternal life.

Vacation reading, it’s all Groovy

Groovy: Embedding Groovy

Groovy: Groovy Beans

Groovy: Groovy and JMX

Groovy: Using Spring Factories with Groovy

Groovy: Dynamic language beans in Spring

JavaWorld: Creating DSLs in Java, Part 1: What is a domain-specific language?

JavaWorld: Creating DSLs in Java, Part 2: Fluency and context

JavaWorld: Creating DSLs in Java, Part 3: Internal and external DSLs

JavaWorld: Creating DSLs in Java, Part 4: Where metaprogramming matters

IBM developerWorks: Functional programming in the Java language

IBM developerWorks: alt.lang.jre: Feeling Groovy

IBM developerWorks: Practically Groovy: Stir some Groovy into your Java apps

IBM developerWorks: Practically Groovy: Unit test your Java code faster with Groovy

IBM developerWorks: Practically Groovy: Reduce code noise with Groovy

IBM developerWorks: In pursuit of code quality: Programmatic testing with Selenium and TestNG

Groovy Zone: GroovyShell and memory leaks

Apache: GroovyUtil.java

Code To Joy: Zen and Groovy’s Expando

Code To Joy: Simply Groovy (How to gain Competitive Advantage on Weiqi Gao’s Friday Java Quiz)

Code To Joy: Groovy’s -e and friends: The Command Line for Java Developers

Code To Joy: Groovy 201: How to Win a Bar Bet on Copy-Paste

Code To Joy: myTunes: Groovy and JFugue

Code To Joy: JFugue and The Charm of Computing

Code To Joy: Zero to RMI with Groovy and Spring

A Public Scratchpad: The Future of Groovy Interoperability?

Test Early: Spring’s so Groovy

Spring documentation: Chapter 24. Dynamic language support

JavaBeat: Integrating Spring and Groovy