Agoraphobiae

Code | Games | Geek


Leave a comment

Fix your goddamn computer

Fixing your computer isn’t hard and you own it to yourself to be tech-literate. That being said crippling tech errors can happen to anyone. I’m nowhere near an expert but I’ve compiled here a huge list that I’ll be updating of general advice, common problems, and how to fix them.

A lot of it is in the mindset. You wouldn’t drive around daily in a dirty car that’s half broken, slow, and unreliable. Your computer, like your car, is a complex tool and you ought to keep it well oiled. Recognize that if your car sucks, you probably don’t have a choice that doesn’t involve copious amounts of moolah. Recognize that you have a choice with your computer and that moolah is not a limiting factor. Recognize that this is awesome.

General Advice

  1. Keep your desktop clean. Use huge icon sizes if you need to force yourself.
  2. Virustotal.com. Use it.
  3. Install as little software as you possibly need.
  4. If it comes in a portable version, consider using that and a shortcut instead of installing.
  5. Learn to google. It’s keyword based, not question based.
  6. Use an antivirus like avast or ad-aware.
  7. Uninstall all of your bloatware. All of it.
  8. Unhide system files, and then never ever touch them yourself. Educate yourself on their contents.
  9. Show file extensions.
  10. Security is vigilance. Complacency is weakness. Never trust any file ever.
  11. Fear .exe.
  12. Viruses come in many forms – .docx, .pdf, not just .exes.
  13. Disable AutoRun. You should make choices for your computer, not the other way around
  14. Educate yourself on the risks
  15. Educate yourself on the possibilities
  16. Stop using IE. I hate you.
  17. If it doesn’t work, doesn’t mean it’s a virus
  18. If it’s slow, doesn’t mean it’s a virus
  19. Don’t install browser toolbars. You will never need it.
  20. DoNotTrack.
  21. Learn what a gHz, mB, GiB, SSD, and RAM are.
  22. Get pissed that you’re advertised 10^3 but get 2^10.
  23. Don’t try anything before you’ve made sure it’s safe.
  24. Use the cloud.
  25. Data redundancy is the best flavor of redundancy.
  26. Simple is better.
  27. Update. your. software.
  28. Read the update and release notes.
  29. Stop giving up so easily. Your computer isn’t going to offer to help you, so help yourself.

Virus Advice

  1. Google is your friend
  2. So are Ctrl+C and error messages.
  3. HijackThis. Learn to read its output.
  4. avast!, ad-aware, avg, bitdefender.
  5. Boot time scans. avast! does this well
  6. Safe mode scans. Mash F8 on Windows boot.
  7. If you don’t recognize it, it’s probably bad or system related.
  8. BHOs are not your friends.
  9. Double check removal worked.
  10. ComboFix, sometimes.

Fix Advice

  1. Keep a LiveCD handy. Ubuntu.
  2. Don’t trust bootsec.exe /fixmbr unless you must.
  3. gparted and ntfsfix.


Leave a comment

Getting a few things off my mind

Sometimes I really love what I do. I love developing, I have some sort of knack for it, and some amount of frustration with all the barriers to entry, but at the end of the day I can’t blame anyone for those things. At the end of the day I really love making things in code, I really love knowing how a computer works, I really love being able to code.

And sometimes I hate having to learn all the details of the cache. I hate having to write proofs, although on the other side often the solution is novel and fascinates me. But sometimes I hate the grind, I hate having to learn what a Schmidt trigger is, I hate struggling to understand and the feeling that I’m falling more and more behind with every week, despite that I loved soldering for fun last summer, despite that I loved learning about these things peripherally and I ate up anything I could learning about them in my spare time. Sometimes, all the passion is gone, and the work is just work, or the passion was never there, and I go, burnt out and unsure, from assignment to assignment, doubting myself, selling myself short, acting like I’ve given up and I don’t care when really in me I care desperately to do well and more importantly I value myself greatly by my ability to be interested in things. Too many people I see care are uninterested in what they’re in school for, or lack the ability to take an interest in others and what they’re studying, what their lives are like. It is amazing that people are even alive, it is amazing that the universe even exists, and yet I see many people unable to pull themselves from the meta of life, the hashtags, the swag, how many likes their posts get and how many people of the opposite gender they can sleep with. There’s nothing inherently wrong with these things, but I take issue with people who can’t see that there’s a difference between likes on instagram, Facebook, tumblr for curating quality content and gather likes for the sake of likes. If you can’t recognize when talking to someone about their passions that it’s something they’re so interested in something they’d literally give their life for it, and you can’t appreciate that, then something is missing.

That being said I know there are a lot of people majoring in things they’re not passionate about; I know, I know. CS is saturated with people in it for the money, people in it because it’s what everyone else is doing, etc. It’s.. conflicting to me. I’m doing CS because I’ve realized I’ve loved it, starting from being the cocky “computer expert” kid in elementary school, to the begging my dad for more RAM, to the fateful 8th grade spring break in which I learned C++ for no reason other than I didn’t have much better to do. I don’t want to be one of those guys who’s on about how much coding he can do, how early he started, how great he is… I know too many of those people already. But if I keep selling myself short, how will other people recognize me, how will I break out of being treated like I’m a noob, like I’m stupid when really I know what you’re telling me already and I swear to god I’m not an idiot, I just act like it because … well the brutal truth is it was the easiest way to make friends for a while for me. Camaraderie over acting like you failed a test. Yeah I was that asshole.

The real struggle is how can I show people I’m passionate about what I do, when I really am and I want to stand out from the people who aren’t? How can I not be an asshole while doing so? How can I not feel burnt out when doing school work, how can I revitalize my ability to do things I’m not so keen on (EE42…) while still being able to find time to work on what I love? How can I care less about what other people think of me? How can I be myself and not be afraid of what others think? How can I feel less alone?

How can I be happy?


Leave a comment

Peavey Vypyr 15 De-fang and Custom Detachable Stompbox Mod

Like many Vypyr owners, I’ve gotten tired of the childish looking batwing slash fang on the front of the amp, so I decided to remove it and in the process make my own stompbox for the amp (the Vypyr 15 doesn’t support a MIDI foot controller like the other Vypyrs). I figured, why buy distortion and effects pedals when my $100 Vypyr does it all (decently) well already?

I used ethernet cables and a box from Michaels (a craft store) and switches from Radioshack. Take a look and more info here: http://imgur.com/a/yeaOY

Peavy Vypyr 15 Footswitch innards

 


Leave a comment

Advice from something who knows nothing

I’ve hardly had any real world experience with, well let’s face it, as a freshman, practically anything at all. But I have had more experience than I’m willing to admit with failure and disappointing myself, and at some point I think I balls’d up enough things to form a coherent life philosophy and world view around it – and I haven’t fallen off the deep end yet, so it’s a good sign that some of this stuff I’m saying might actually help (wishful thinking on my part). These are just some pieces of advice I’m trying to live my life by.

 

Empty before you fill. You can’t learn anything if you already know everything.

For me, I didn’t empty before I filled when I started learning new languages beyond the couple I already knew, and so I missed many of the small features and nuances of the new languages, just because it was easy for me to relate something in one language to an analogue in another.

Don’t be afraid to scrap it all. If it isn’t working, throw it away and go back to square one. Don’t let the “it could’ve been” keep you from moving forward.

I always become too attached to my code, and so when it stops working or I encounter bugs that require huge reworks of the code, I often just give up instead of starting over. Building it back up from scratch is not as a momentous task as you think, and you’ll thank yourself later when you don’t have to restart because of a program breaking design bug.

Stop feeling bad for yourself. Your work does not define you. Life goes on.

I always dwell on things too long, wasting my own time and draining my work ethic. It doesn’t matter that the last thing you wrote sucked – the next thing will suck marginally less, and towards perfection you will go.

Also, the whole work does not define you thing – Edmund McMillen, (one of) the artist/programmer behind Binding of Isaac/Super Meat Boy has cut out lines tattooed around his left arm to remind himself that even if he were to lose his left arm and his ability to draw, to create and to program, he would still be a whole person. It’s a beautiful reminder that we are not our work, but people.

Take baby steps. Plan. You can’t accomplish big picture goals in one go. Breaking it down can make things seem a lot less helpless and give you a sense of real progress.

This one is simple. Write out a list of tasks. Draw some goddamn diagrams of your program and all the conditions it has to check. It will help so much.

Just do it. Ignore diminishing marginal utility. You get what you put in. Don’t reinvent the wheel, just complete what’s at hand, and forget about the law of marginal utility – that the more you put into something, the less you get out of it. If you don’t put everything into something you won’t get everything out of it.

I am a half-asser, so this one is huge for me. Don’t think of the work as some abstract pile or wall stopping you from proceeding. Break it down and just do it.

 

Anyway, I hope I have luck implementing these things into my life. Here’s to a better 2013.

Oh, and Start a project. Hopefully one that will engage all of your interest and effort, one with a friend, one that will grow to define you.


Leave a comment

Working embedded fonts in AS3

Embedding a font into AS3 is frustrating and yet another thing I did not find well explained online. You will need to do 3 things:

  1. [Embed] the font file
  2. define the font as a class
  3. register the font

Embed the font from a relative location to your .as file. Since my .as files are in the proj/src folder, I’m using ../art/Intro.otf as the location of my font. You will need to specify embedAsCFF as false, otherwise Flash will give some nasty errors about Flex libraries missing when you export.

Then, in your constructor of your document class, register the font, so that you can use it elsewhere.

After that, you can use the font anywhere in your code. See the code below:

import flash.text.Font;

// font
[Embed(source="../art/Intro.otf", fontName = "Intro", fontFamily="Intro", fontStyle="normal", fontWeight="normal", mimeType="application/x-font", embedAsCFF="false")]

var Intro:Class;

// Constructor
public function myFlash()
{
    // font setup
    Font.registerFont(Intro);

    //...
}

// elsewhere
var textf:TextFormat = new TextFormat();
textf.color =           0xFFFFFF;
textf.font =            "Intro";
textf.size =            48;

Enjoy custom fonts!


Leave a comment

Fade in text, then fade out text with embedded font in AS3

There are many snippets online on how to fade, but each with it’s own flaw – some incomplete, some using AS3’s default Tween (yuck). After trying to figure out it for myself, I came up with this. The following is a working example of placing some text on the stage, fading from 0 to 100 alpha, then back to 0.

To start off, import the classes needed. I’m using the TweenLite library, widely regarded as the best (so I’ve heard), better than the default Adobe Tween. After using their website demos, you’ll see it’s much faster. You’ll need to grab the library, and place the com folder from the .zip into the folder with your .fla, as instructed in the Getting Started Guide.

// remember to import
import com.greensock.*;
import com.greensock.easing.*;

import flash.text.TextField;
import flash.text.TextFormat;
import flash.text.TextFieldAutoSize;
import flash.text.Font;

Continue reading


5 Comments

Inverted scrolling and Two Finger scrolling in Linux Mint 14

Everyone loves the inverted, physics-sensitive scrolling of Macs, so why can’t Linux have that? It’s pretty simple to set up in Linux (I did this in Linux Mint 14, but it should work for Ubuntu, etc as well). Below is the script:

#!/bin/sh

# inverted x+y scrolling for the touch pad
xinput set-button-map 13 1 2 3 5 4 7 6
# two finger scrolling
synclient VertTwoFingerScroll=1
synclient HorizTwoFingerScroll=1
synclient EmulateTwoFingerMinW=5
synclient EmulateTwoFingerMinZ=48

You will need to edit the xinput line. Run xinput list and find the id of the device you want to have inverted scrolling (in my case, the touchpad, which had id 13). Then test the device with xinput test <id>

#!/bin/sh
# Setup

# to find which device
xinput list

# to find out which buttons to reverse mapping
xinput test <id>
# For example
xinput test 13

Scroll up and down while the test command is running to find which button id your scrolling is. For me it was 4 and 5 for vertical and 6 and 7 for horizontal. Reverse these numbers in the xinput set-button-map 13 1 2 3 4 5 6 7.