Blog

  • BBM update

    Recently I created a project on sourceforge about my Binary Bit Map library. My project includes several goals.

    0. Create my own image format.
    1. Create useful functions to allow me to draw pixels and basic patterns to my images.
    2. Write a conversion tool that non programmers could still use that converts between my format and others.

    As far as goal 0, I did previously create my own image format and even wrote a very large text file detailing it. However I ran into some problems.

    First, I tried to save space by not adding any padding at the end of a row of pixels. This meant that my files were smaller than other uncompressed formats but the space saving was such a small difference that it added tons of complexity for saving a few bytes. It wasn’t worth writing a totally different function. I may consider changing this.

    As far as goal 1, I already have many good functions I’ve written and have the means to draw pixels anywhere and save the arrays to several popular image formats. However I’m lacking a few things. I don’t yet have a way to drawn text, lines, or polygons on them. Previously I did so using SDL or Allegro but I really don’t want my code to depend on the overly complicated libraries that change and are not easy to install and set up. It defeats the purpose of trying to write my own graphics library.

    And for goal 2, there is much work to be done before I can consider my own format to be final and write viewers or converters for it. However it occurred to me that when that time comes, I could try writing them using other libraries or even other programming languages. It may be the subject of a book.

    I also created a logo for my project. It’s not fancy but it gets the point across of what it’s about.

    BBM_logo
    My focus has been on monochrome Bitmaps because of their simplicity and beauty. Some images fit into my project well and others don’t. It’s an art form of itself trying to see what can be created in the limitations of black and white.

    Here is the animated version.

    BBM_logo_roll_left

  • Hypocrite

    To the people who are considering going vegan to reduce the destruction of the Amazon forest, don’t bother because that’s just going into it with a selfish mindset. Only when humans become concerned about what happens to them because of climate change and environmental issues do they take action.

    If you didn’t care about the billions of animals artificially bred just to spend their lives in crowded prisons before being killed because you don’t bother to eat plants like the horses, gorillas, and elephants having been doing, don’t pretend to care about the destruction of all life on the planet.

    Sooner or later it will happen. Yeah the trees will be destroyed and we’ll run out of oxygen or perhaps the bees will go extinct and most crops that depend on them will disappear too. At the rate humans are destroying and polluting things, I highly doubt that even if all the humans magically all changed and did everything right, it’s probably too late to reverse the damage. We’ve already gone too far and there are too many humans all playing their part in the destruction.

    And hey I’m not here to pretend that vegans don’t also damage the environment in certain ways. I personally do the best I can to avoid damage. Aside from not buying animal products, I also use reusable bags and I am moving to independence so that I don’t even have to rely on cars from Uber and Lyft. But even I have to pee and poop and it all goes who knows where. We all produce waste and we are all forced through taxation to pay for things our governments decide to do which further pollute or cause the deaths of plants and animals. Vegans do the best we can but nobody can cause zero harm. The point never was perfection. We just do the best we can and improve as we learn more.

    No, the point of veganism was to do the best that we can to avoid causing the unnecessary pain or death of the animals that are obviously suffering similarly to how we would if we were in their place. And yes we should care about the ecosystem as a whole and the plants that are required for all animals to live.

    I try to make this point clear but I KNOW I am not a good communicator. There are others much better than I and I know some of them can be more helpful for those of you who are transitioning to veganism.

    All I ask is that you do your own searching on google,amazon, or whatever other method you prefer to learn why people go vegan. Don’t take my word for it, because honestly I don’t want to explain it. I want to go on to other things and enjoy my short life, however long it may be before either I die or we all die together after the world is destroyed.

    And I can tell you, although I have little time to say much of anything, I will continue to promote veganism in my own way. Not because I’m any good at it but because I’m apparently the only one in this whole damn town who cares enough. My online Vegan friends are the only people I trust anymore.

    But the rest of the people just accuse me of being preachy, annoying, judgemental, or elitist. And I want to put these rumors to rest, they are true.

    Yes at times I am all these things. But today I’ll tell you that I am ok with that because the alternative is to be a liar. I cannot pretend to be one of those people who kisses your ass and tells you that I fully accept your actions. Do I accept you as a person? Yes. Do I accept your actions which are harmful? No. Learn the difference.

    If you followed me for a good length of time you’ll know that I do my best to follow the Golden rule and treat others the way I want to be treated.

    And when I tell you that you are a hypocrite for grieving over the death of other humans or your pet dogs or cats while you stuff murdered cow, pig, and chicken into your face, I’m only telling you what someone once told me.

    They told me I was a hypocrite because I was against abortion unless I was also vegan. And they were right. I couldn’t argue against that one nor could I find a reason to say it’s ok to kill one type of animal but not another. That person changed my life and set off a chain of events that forced me to rethink my entire life and ethics.

    I became Vegan and also rejected the immoral religion of Christianity in which people are cruel but believe themselves good people because they have the right beliefs based on ancient books. These steps also helped me think clearly and realize my identity as an asexual transgender woman, which affects me in minor ways but is not important when compared to the ethical standards of why I am vegan.

    I came to see that we are all of equal value. The color of our skin, our genitals, or our species have nothing to do with the value of our lives. We should not discriminate because someone looks different and decide to kill them. Racism, sexism, and speciesism must end. I reject them because they are all the same thing.

    And if I offend you with something I said, then I hope it leads you on a similar journey to improve. So go home and rethink your life, hypocrite.

  • WBMP

    “6.3 Header Data Structure 6.3.1 Multi-byte Integer format The WBMP image encoding uses a multi-byte representation for integer values. A multi-byte integer consists of a series of octets, where the most significant bit is the continuation flag, and the remaining seven bits are a scalar value. The continuation flag is used to indicate that an octet is not the end of the multi-byte sequence. A single integer value is encoded into a sequence of N octets. The first N-1 octets have the continuation flag set to a value of one (1). The final octet in the series has a continuation flag value of zero. The remaining seven bits in each octet are encoded in a big-endian order, ie, most significant bit first. The octets are arranged in a big-endian order, ie, the most significant seven bits are transmitted first. In the situation where the initial octet has less than seven bits of value, all unused bits must be set to zero (0). For example, the integer value 0xA0 would be encoded with the two-byte sequence 0x81 0x20. The integer value 0x60 would be encoded with the one-byte sequence 0x60.”

    Example:

    Hex A0

    Bin 10100000

    Hex 81 20

    Flags and seven bit groups

    1 0000001

    0 0100000

    The two groups of seven bits

    0000001 0100000

    The lower eight bits of that fourteen bit group.

    10100000

    Which in fact is the original binary!

    The quote above is from the documentation about an old monochrome image format known as WBMP. It is used in many older cell phones.

    With a full understanding of this format I could even write it with my own C code.

    The pixel data itself is stored the exact same way that PBM files have except that in this case bits of 0 are black and bits of 1 are white. I already have code that does this that I use for the BMP and TIFF formats.

    The multibyte integer format is only required in the header. It seems that it’s an escape from having to decide how many bytes must be used to represent the width and height.

  • Short Vegan Responses

    As usual, I’m the only vegan at work. However there is this guy who thinks I’m missing out because life is apparently about bacon. I told him pigs are friends, not food. He also asks about why I don’t do dairy and eggs and I told him there was no time to get into it at work. If he really wanted to know there are plenty of good documentaries and books.

    But since he pestered me I gave him the short answers. I don’t breastfeed because I’m an adult and eggs come from vaginas and I don’t like vaginas.

  • Caitlyn Jenner

    This is the first video of Caitlyn Jenner I have ever seen. I remember seeing the magazine cover years ago but never cared because I didn’t even know who Bruce Jenner was. I don’t watch tv or care about celebrities in general.

    However I will say this. When a famous athlete who is the very example of what society thinks a man is still doesn’t feel like a man, it’s a lesson to everyone.

    I have observed that the social value of a man is measured in his strength and money. People objectify men in a different way than women but it’s still wrong.

    So when a strong rich man turns into a woman, society goes mad. They don’t know how to fit this into their beliefs about how the world works. That’s why I’m a fan of Caitlyn, for that reason alone. Thanks for making people think.