• Activity
  • Votes
  • Comments
  • New
  • All activity
    1. Programming Challenge: Text compression

      In an effort to make these weekly, I present a new programming challenge. The challenge this week is to compress some text using a prefix code. Prefix codes associate each letter with a given bit...

      In an effort to make these weekly, I present a new programming challenge.

      The challenge this week is to compress some text using a prefix code. Prefix codes associate each letter with a given bit string, such that no encoded bitstring is the prefix of any other. These bit strings are then concatenated into one long integer which is separated into bytes for ease of reading. These bytes can be represented as hex values as well. The provided prefix encoding is as follows:

      char value char value
      ' ' 11 'e' 101
      't' 1001 'o' 10001
      'n' 10000 'a' 011
      's' 0101 'i' 01001
      'r' 01000 'h' 0011
      'd' 00101 'l' 001001
      '~' 001000 'u' 00011
      'c' 000101 'f' 000100
      'm' 000011 'p' 0000101
      'g' 0000100 'w' 0000011
      'b' 0000010 'y' 0000001
      'v' 00000001 'j' 000000001
      'k' 0000000001 'x' 00000000001
      'q' 000000000001 'z' 000000000000

      Challenge

      Your program should accept a lowercase string (including the ~ character), and should output the formatted compressed bit string in binary and hex. Your final byte should be 0 padded so that it has 8 bits as required. For your convenience, here is the above table in a text file for easy read-in.

      Example

      Here is an example:

      $> tildes ~comp
      10010100 10010010 01011010 10111001 00000010 11000100 00110000 10100000
      94 92 5A B9 02 C4 30 A0
      

      Bonuses

      1. Print the data compression ratio for a given compression, assuming the original input was encoded in 8 bit ASCII (one byte per character).
        2. Output the ASCII string corresponding to the encoded byte string in addition to the above outputs.
      2. @onyxleopard points out that many bytes won't actually be valid ASCII. Instead, do as they suggested and treat each byte as an ordinal value and print it as if encoded as UTF-8.
      3. An input prefixed by 'D' should be interpreted as an already compressed string using this encoding, and should be decompressed (by inverting the above procedure).

      Previous Challenges (I am aware of prior existing ones, but it is hard to collect them as they were irregular. Thus I list last week's challenge as 'Week 1')
      Week 1

      13 votes
    2. On exercising your rights in privacy policies

      @swipp_it: 1/ So, I guess my new "hobby" over the past few years has become reading terms of service/privacy policies for things I want to use and then trying to enforce my rights as laid out in those policies. Unsurprisingly, companies are often not certain how to respond to this.

      11 votes
    3. What have you been listening to this week?

      @Whom asked me to cover this post for today. What have you been listening to this week? You don't need to do a 6000 word review if you don't want to, but please write something! If you've just...

      @Whom asked me to cover this post for today.

      What have you been listening to this week? You don't need to do a 6000 word review if you don't want to, but please write something! If you've just picked up some music, please update on that as well, we'd love to see your hauls :)

      Feel free to give recs or discuss anything about each others' listening habits.

      You can make a chart if you use last.fm:

      http://www.tapmusic.net/lastfm/

      Remember that linking directly to your image will update with your future listening, make sure to reupload to somewhere like imgur if you'd like it to remain what you have at the time of posting.

      13 votes
    4. How does technology improve your quality of life? In what ways does it detract from it?

      I think it's safe to say that, in our modern world, everyone has an individual and complex relationship with technology. We're all experiencing the growing pains of uncharted territory, as...

      I think it's safe to say that, in our modern world, everyone has an individual and complex relationship with technology. We're all experiencing the growing pains of uncharted territory, as computers, phones, and the internet continually revolutionize experiences from the everyday to the extraordinary. Unfortunately, it can often feel like every step forward also brings regressions, and what's good for some is not always good for others.

      I'm interested in hearing about the ways that technology works for you in your life, both the good and the bad. Some guiding questions:

      • What's better in your life because of technology? What is worse?
      • How does it impact your career, hobbies, and interpersonal relationships?
      • Are there tradeoffs you have to make for incorporating or ignoring tech for certain tasks or aspects?
      • Are there areas in which you hope for the increased presence of technology?
      • Are there areas where you actively keep tech out?
      • Do you think that the problems created for us by technology are design flaws in the tech itself, or are they merely a mirror for pre-existing issues at the human level?

      I know "technology" as a term is very broad, but I've intentionally left it that way because I want people to self-select the things most important to them, whether that's their computer, the internet, a phone, an online platform, an assistive tech device, etc. Also, don't feel obligated to list out every piece of tech, as it's gotten so prevalent to be almost omnipresent. Instead, just focus on the things that have a significant impact on your day to day life.

      22 votes
    5. Tildistas, what is your favorite poem?

      there have been quite a few discussions on poetry on here and more than a few people post it from time to time, but i don't think anybody's asked this question recently if at all on this site, so...

      there have been quite a few discussions on poetry on here and more than a few people post it from time to time, but i don't think anybody's asked this question recently if at all on this site, so let me be the first to do that.

      alternative/bonus question for those of you who can't pick a singular poem: who is your favorite poet in general?

      (also just to be clear, non-anglophone poetry/poets are of course welcome for the answer here. don't feel limited or obligated to confine yourself just to english poetry because most of the people here are anglophones)

      19 votes