• Activity
  • Votes
  • Comments
  • New
  • All activity
    1. A basic wiki system is now available for groups

      Friday afternoon just before an American long weekend probably isn't the best time for me to announce a major update, but oh well, I'm doing it anyway: There is now a basic wiki system available,...

      Friday afternoon just before an American long weekend probably isn't the best time for me to announce a major update, but oh well, I'm doing it anyway:

      There is now a basic wiki system available, with each group being able to have its own set of pages. I think this should help a lot for letting people collaborate on information through the site itself. @deing has been running an unofficial wiki (thanks!), but having it natively on the site should be much easier for people to find and help edit, so hopefully we can transfer over most or all of that content.

      As always, a number of aspects are pretty rough and I'm sure I'll keep tweaking it over the next little while as I see how it starts to be used, but it should be decent enough to get started with. Various things to know about it:

      • As of right now, permission to create and edit wiki pages must be granted manually. So if you'd like to get involved with editing wiki pages, please either comment here and say so or send me a message and I can give you permissions.
      • The editing history is being stored in git, which will give us a lot of neat functionality for "free". You don't need to know anything about git at all (or even know what it is)—it's all done internally, but it means that I can do things like sync the wiki pages to GitLab and take advantage of their existing interface to display changes, page histories, etc. instead of needing to duplicate all of those functions from scratch (which might be nice to do someday anyway, but it's neat to have them all already with this method).
      • Unlike other content you post to Tildes (such as your comments) which remain your own, contributions to the wiki will be licensed under Creative Commons Attribution ShareAlike, in order to allow others to edit, reproduce, and so on. This is explained prominently on the wiki editing pages, and I'll update the Terms of Use shortly to reflect this as well.
      • I'm going to duplicate all the pages from the Tildes Docs site into the ~tildes.official wiki. This will allow people to be able to contribute changes to the docs without needing to figure out all the pieces for making changes to that repo directly. It won't update automatically or anything (and I wouldn't want it to), but I'll review any changes made through the site wiki and move them onto the Docs site.

      I think that should cover the main points, but let me know if you have questions. Also, it's been a while, so I've topped everyone back up with 10 invites again. Thanks!

      89 votes
    2. 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
    3. 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
    4. 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
    5. 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