Monday, December 24, 2018

Preparing and Taking a Certification Test

Despite how many people hate it, we judge education and skills with standardized tests most of the time. As a result, most certification tests are standardized tests. Of course there are exceptions, but in most cases you will run into standardized tests. Personally, I've always had poor test taking skills. Despite this, I've passed all but one certification on the first try and the one I failed was in the beta phase anyway. So here's my advice on how to pass.

Now the first obvious thing to do is study. Today you have a huge selection of options to choose for studying. You can choose between instructor-taught courses to self-study. In my opinion, instructor taught courses are over priced and offer very little added benefit for anyone who is at least a hobbyist in the subject matter. That is not to say you shouldn't try it out, I just think most of them are fairly expensive for what you are getting and co-workers that use it do not seem to have any more of a leg up. Then of course there are books you can buy and study guides you can download.

I've done all of my certifications through CompTIA so far and I use the Certmaster tool. I find there are two main benefits. The first is that since it is made by the people that make the test, it covers almost all the material necessary. The second thing is they also word the questions in a similar manner, so it mentally prepares me to be able to read and understand the questions on the test. The wording of questions is the big thing, because I wonder if English is their first language or somewhere down the line a fifth of sixth.

Study guides and topic outlines are also useful to read over. They often can include things you can do your own research into. For me, this research leads to tools and techniques to actually try.

Actually trying the techniques, tools, and methods that you are studying is probably the best way to hammer the ideas into your head, coupled with an understanding of the practical application involved. Say you read about nmap and have never tried it before, simply do some googling and then try out the tool. In some instances, it's hard because you might not have access to the tool or program or have a setup to try the technique. In those cases, you may still have a way to set it up with some virtual machines or maybe find demos and screenshots online. Anything to further familiarize yourself with the content.

Books. I like having physical books. Problem is, they eventually go out of date. Make sure if you buy a book that it is a version that is useful to you. Check the publication date, any reviews, and any information that indicates that they are worth reading. Then make yourself a library. Knowledge is power.

Time. Take your time studying. Study a little bit every day.

Refresh earlier information as you go. Read acronyms as the words they represent. Take practice quizzes and try to answer without looking at the multiple choice answers. Try to teach others around you what you've learned, even if they yell at you to shut up or keep saying they have no idea what you're talking about.

So now you are prepared to take the test. How can you take a test any different to optimize your chances? The first thing is to go through the whole test, even questions you are not sure of. When you come across a question you are not sure of, first eliminate all the answers you know are wrong, then guess with the remainder. Make sure you pay attention as you go, as one question may have an answer for another question in it. I've had questions where after I eliminate all possibilities I know are wrong, I have one answer left which helped me answer another question by eliminating one of the two options I had narrowed it down to.

Okay, so you got through the test, and look! Still time on the clock. Do not end the exam yet, go back to the beginning and start over. More often than not, I find questions that when I'm on my second run, I look at the answer I picked and realize that I had misread the question. So go through and look for errors, look for answers other questions gave you, look to find what you did wrong.

Now you made it through again. Maybe there's still time on the clock. Use it. Go through again and again until that time runs out. Maybe you're just clicking next and not changing anything, but each time you go through you should be more certain of your answers than the next.

Times up, exam ended. You passed? Great! You failed, don't fret. If you do fail, even after all that work, try to keep all the questions you can remember. Go home, try to get the right answer. Go through all your study material with all the questions of that test in mind, then try again.

There's no magic method that will make you always pass, no perfect study material. You just have to be willing to try.

Saturday, December 22, 2018

Getting Certified for Beginners in IT

For those just starting out in IT, to those looking to change careers, getting certifications is a great place to start. From my experience, employers love certifications. Whether or not the certification is actually as useful as people think is an entirely different story. Now getting a certification is not a magic key for a job, but it can be some heavy leverage. It's a piece of paper that specifically says that you can do that type of job and are backed by an industry standard that you are indeed capable by there standings. So where to begin?

Every job I applied to, and the job I currently work, consider the CompTIA A+ the starting point of being an IT Specialist. Sure people get hired without it, but at my place of employment, they expect you to either acquire or have supplemental experience/education with credible proof. I will say that the CompTIA IT Fundamentals is as useful as toilet paper, so try to start with the A+. There are other companies with other certifications, but the A+ is the go to. So what does an A+ mean? Well, it's pretty much a basic understanding of computers, operating systems, and troubleshooting. Pretty much the job description of IT, the only thing you need to add on is that you're good with Office suites like Microsoft Office, and maybe tack on some free ones like Libre Office and OpenOffice.

Despite the A+ being a job description for IT work, like a help desk, it's just saying you meet expectations. In the day of the Internet, networking is something every IT person should at least understand. This includes things like the OSI model, different technologies used, network services, and the like. When it comes to networking, there are two routes you can go. CompTIA Network+ is the normal go to if you're not wanting to go heavy into networking, but the Cisco certifications like the CCNA are held in high regard. Even if you don't use a Cisco network, their certifications are held very high when it comes to networking.

Once you cover these two areas, you should have the proof you need that you can IT. After that you can branch out into quite a few different areas. They include Security, Infrastructure (Cloud and/or Server), and Networking to name some. Those of course branch off into more specific groups.

When looking at security, there's the CompTIA Security+, CySA+, PenTest+, and CASP+. There's also other companies such as SANS with the GIAC stuff, EC-Council with their well known CEH (certified Ethical Hacker) to get you started, and Offensive Security (who brings Kali Linux to the table) with a certification that shows you can penetration test in the real world. There are so many good options here, especially with everyone trying to get into the penetration testing stuff.

With networking, your best bet is to get into Cisco's certifications. To be honest, I don't recall seeing much else asked for outside of Cisco certs beyond the minimum of a Network+. It's also a good start with so many companies emulating what Cisco does and the way they do things, so you still are quite versatile.

Infrastructure is a unique area because it often requires some advanced networking, security knowledge, and a million and one tools and commands to pull out of thin air. When it comes to the cloud stuff, I have never really looked at it. When it comes to the server stuff, there's of course some that CompTIA have, like the Server+. Other options worth exploring are the certifications offered by Microsoft themselves. Let's face it, they're everywhere. There are of course other things out there that can be just as important, or even more so. In steps Linux. CompTIA does have the Linux+, but I think the Redhat certifications are a better bang for your buck. Redhat and CentOS seem to be the heavy hitters in the Linux world that actually require some knowledge. Every Ubuntu based server I've delt with at work was either shipped pre-configured or just a script you ran and called it quits. I manage the CentOS servers we use for mass image deployment across our locations. We have security cameras that use Ubuntu servers, but those are already setup and our camera guy is usually only running updates or wget and a shell script. There's a few other places that offer certifications, but none spring to mind.

I should also add that there are certifications for virtualization that can be valuable for Networking and Infrastructure. There's plenty of information on it if you go check out VMWare and their certification path.

So how do you decide which way to go? Well, start with the A+ and Network+. Figure out an industry you want to work in or type of area. Then just take the more general varieties and narrow it down as you go. So... Good luck!

Wednesday, November 14, 2018

Game Review: Fallout 76

I don't normally get games right when they come out anymore, however fallout was a game I fell in love with when first playing Fallout 3. It was my first introduction to the game series. I still say Fallout New Vegas is my favorite. Even though I wasn't as big of a fan of Fallout 4, I still played it a lot. You see my problem with Fallout 4 is the lack of just anything going. I couldn't kill my way to victory without teaming up with the brotherhood and the minute men were just there no matter what I did. Not to mention, settlement building seems like nothing more than a novelty. Sure I would have ideas and try to make them happen, but in the end it was just a frustrating extra I spent the majority of time avoiding.

Now we have Fallout 76. I set my expectations as low as I could for this without just outright hating it. Multiplayer in Fallout sounds cool, but I don't often play with people online anymore and in the Fallout world, it just seems incompatible. Building comes back with camps and workshops. I actually like the camp ideas and have not stepped foot on a workshop because just no. The world is huge. Things have changed. The short story... the game isn't bad, but it's just not good. I have it right now ready to go in my PS4, just got it in today and I just don't have any desire to play it. I also got the power armor edition, so the helmet came in with it. Cheap. Broken. Plastic. The harness so it can be worn is missing and the part it clips to is broken. The voice modulator would be better from a dollar store. The plastic feels brittle and cheap. It's a display piece you stand about 10 feet away from so it looks somewhat nice.

So let's start with positives about Fallout 76. It functions as a FPS. It's not the greatest FPS, but it works.

CAMPS are a cute idea that can be helpful. They aren't a focal point, but they can be fun when you find places they can actually bet setup.

It's Fallout-ish. It feels like a Fallout-skinned spin-off which is okay if you like the look and feel of fallout.

That's about the best I got for it, so buckle up for everything I don't like about the game. It's gonna be bumpy. Ready? Let's do this...

I can't sell ammo. I have hundreds of rounds of ammo that is now just useless junk. I'm not gonna hunt down someone to trade my useless ammo to because most people only use a handful of different weapons anyway.

The fact that I need to eat and drink starts out okay, until you realize that you now need to find places to hide to access some menu or another to eat and drink.

Stimpaks are now the right d-pad, when every game before used up. SERIOUSLY, THIS IS ANNOYING AND I CAN'T SEEM TO CHANGE IT.

Weapon wheels suck for console. I just want stimpaks and 3 weapons (4 d-pad buttons) I always do a melee, a short range, and a sniper. Since left on the d-pad only brings up the previous weapon, it's just a toggle for two weapons. Why the hell do I need another menu to bring up like 30 item slots? It's gonna take just as long going through the damn Pip-Boy.

There are no local maps. None. Good luck.

The map is huge and I spend more time just running around than anything else. Run, maybe run into an area with enemies, clear it out in a minute or two, run for another ten minutes. FALLOUT RUNNING SIMULATOR 76. Run, eat, drink, then take a shit while digging through all the menus to access everything else.

Weapon levels. Strength for shotgun perks. Slow firing weapons do more damage because reasons. Just give me a chinese assault rifle, they should be all over the place since it's just 20 years after the war. Or are we just never gonna bring that gun back?

Food goes bad. Thanks. Not like I don't already deal with that in real life, now I got leftovers I forgot to through away in game, too? Seriously, just piss off with this.

According to the guide, super mutant behemoths are in the game as well? How can they be when they are supposed to be very old super mutants. You're now telling me there are 25 year old super mutant behemoths? Really?

Only feral ghouls. Wasn't the idea they go feral more so over time and initially most weren't? No, screw normal ghouls that are coherent, let's make a new enemy called scorched, which are basically the same thing only they just don't live past this game and you've never heard of them before because reasons.

There is no interactive dialog. Unless you want to talk to other people. I overheard a conversation that involved something along the lines of a naked picture of Harriet Tubman and saying she had a nice ass. I wish I was making that up. Give a round of applause for the classy kids on this game.

Holotapes. Narration. Robots. It's like an audiobook with periodic shooting, lots of walking, and making sure your tomogachi... I mean character, is well fed and hydrated. Fallout tomogachi? I think that might actually be more entertaining.

Lots of stuff that makes me question if the game is even lore friendly that may seem like nit-picking.

In all seriousness though, the game isn't terrible as a game. From my perspective, it's just not something I asked for or even wanted. I'm left with the feeling that Bethesda is making games for Bethesda, not the fans. A friend of mine who enjoys it described it as like GTA, but Fallout. If I wanted to play GTA, I'd just go play GTA, or RDR. I get it, other games have mechanics that people seem to think are so cool. Here's the thing, I play Fallout to play Fallout. Not GTA or Fortnite or whatever else the kids are playing these days. I don't play Fortnite or GTA or Minecraft or Rust or any of that. So why would I play a Fallout skinned version of these?

If you enjoy the game, that's great. I'm not here to say your opinion is wrong and the game sucks, I'm just saying the game isn't for me. Also, if you hate the game but were a fan of Fallout, I feel your frustrations. It's the same frustration felt when Fallout 3 first came out to those who like the gameplay style of 1 and 2. But here's where I'm at... I'm done with Bethesda for now. I may play the game just because I have it, but I'm just disappointed with Bethesda as a whole. It's like when I tried playing Rage after I picked it up on sale. It made me wonder how they ever manage to make a decent game.

Tuesday, May 29, 2018

Tech Review: EC Technology Foldable Bluetooth Keyboard (A40-BT002)

Due to work, I often find myself emailing from my phone or desperately trying to find a computer and spending the extra time to log in and get to my email just to type with a real keyboard. This is because I move around between multiple locations and am often on someone else's computer that may or may not work, and I also don't necessarily want to log into my email on someone else's account. Worst case scenario involved pecking at my phone screen or swiping around in feeble attempts to get everything spelled out correctly. Often times names, brand names, special characters, or various technobabble leads to horribly written emails with at least one typo. This is far from ideal, so I finally caved in and got a Bluetooth keyboard.

The one I settled on was the EC Technology A40-BT002. My main draw to this was the covers over the hinges. I don't like exposed ribbon cables or cables crammed into a joint as I tend to damage those quite often. The device is also cased in aluminum, so should be pretty durable and it also makes it feel like quality. The dimensions are pretty good, it is like a stockier shape of my Pixel XL in a Lifeproof case. I actually got that case to keep crap out of the ports because the rubber plugs I had purchased got lost too often. So it's a little shorter, wider and roughly the same thickness, not enough difference to notice. When it is open, it's a good size for people with normal sized hands, mine are rather large but I have to type on chromebooks from time to time and it's fairly similar. It holds itself open very well, the hinges are so low profile they are almost completely unnoticeable. All things considered, it's a really solid design.

The way it folds up, the hinges are right on the staggering of the keys, so the main part of the keyboard remains proportionate and the seem between is very easy to miss if you're not looking. It has all the keys I need, as I also like to play around with Termux on my phone. The biggest problem I have is the size of the shift key on the right and the tab key. I keep accidentally hitting the up arrow and tab is virtually non-existent compare to the other keys. I'd say it has a learning curve to get used to for full-speed typing. Luckily, I type slow normally.


To use this on a computer, you will need to use the Windows layout to use the Home, End, Page up, and Page down keys. Unfortunately, it won't let me use the Windows key as the Super key when in Virtualbox, it just uses it as the Command key on Mac. While on a Mac, switching to IOS let's me use some of the other functionality like Volume up and down.

Now I've only had it for a few days, but I am quite happy with the purchase. It looks good, feels like quality, and types well enough for a quick email or messing around with Termux. It's also nice to not lose half the screen just to type. This makes split-screen apps on Android actually useful since the screen won't resize just to type. Now I just need a solution for carrying around everything for EDC, because at work I just use my Fallout NCR messenger bag. Anyone think fanny packs are in?

Friday, March 23, 2018

Techs from the Crypt: Holiday Network Nightmare

During the Christmas break at my work, the tech department continues working for a good portion of it. We work almost as long as the gremlins that cause the problems, it seems like most of the time. Normally, I enjoy working with no one in the buildings because that means not only can I get stuff done at my own leisure, but no more work orders come in. Normally, it's a good time to work, however it's not just the people who's computers I fix that can be a major problem. A good portion of the time, some of my worst experiences come from those I work with. In this case, my boss set me up for quite a bit of anger and as I am writing this, problems still persist. So sit back and get some popcorn while I spin you the tale of my network nightmare!

For some background, we had contractors running a new Cat6 network along side the old Cat5 and Cat5e network that was currently in place. This alone was riddled with headaches due to them unplugging network cables of inept teachers, leaving behind particulate from the drop down ceiling, leaving doors unlocked, and even leaving behind empty pizza boxes. I dealt with those problems as they were presented. In the meantime, our Network Administrator was learning how to use Brocade Ruckus switches. All of our current infrastructure was HP Procurves of all various time periods and Ubiquiti edge switches that had a problem with POE burning up the onboard fuses on cards we could not get replaced and could not send the switches back for repair because the warranty was so short. The end goal was to replace all the Ubiquity with Brocade Ruckus switches, stick in new HP Procurves where we need extra connections with no POE in rooms that were air conditioned because all the current equipment were in electrical rooms. Since I am an IT Specialist, I was not involved in the major networking choices or configurations.

One of the days when getting ready for our big cutover, the Network Manager had a heart attack and went to the hospital to be put into a chemically induced coma because of a 90% blockage in his heart. So now we have a half configured network, equipment everywhere and the ONLY network person and only person who knew what was going on with the network was not only hospitalized, but unable to in anyway tell us where his notes were to get this stuff going. So as we inch closer to the break to do the cutover, my boss decides to have me check everything over and try to work out what was going on and figure out where everything was. I reluctantly did so.

As I found a saved half-working configuration, I grabbed an extra switch and began to mess with it to try and make a generic configuration that would suffice for a quick copy-paste deployment to get us started. A few days before we went into the break, another tech had to leave because of a death in the family and would not be back until the end of the break.

Already by now you are probably thinking that all the signs are saying to not do the cutover now. The fates are all stacked against it. However, it continues to get even worse. It gets so bad that I contemplated just simply walking out.

Now we get to the last day before the Christmas break. My boss had decided to come with me to the location and review everything so we could set it up for the cutover. At this point, I am highly against trying to do the cutover because of the ramifications should we screw up and not be able to correct it before the break is over. Ramifications that I am now suffering. So we go through everything we can, I install and configure as much as I possibly can in a forlorn hope to not be eaten alive by the project. At the end of the day, before we left, I was told something that I am still flabbergasted by. As my boss was on his way out and we were chatting...

"Well, I won't be able to help with this next week. My wife said I need to clean the house because we have guests coming over. Could you work on it the following week (this is the week OF Christmas, just FYI) when I am available to help?"

Not only is that excuse one of the most irritating things I have ever heard uttered, seemingly a slap in the proverbial face of work-ethic, logic, and common decency, but the reason I was making sure to keep those days clear was specifically because HE PUT IT ON OUR WORK CALENDAR TO DO IT THAT WEEK. I know what you might be thinking. It's horrible, but can it really get any worse? Well, get ready to cringe so bad that your face may just stick in that position for days to come.

The next day, I show up to work and wandered around like a lost puppy trying to find some guidance or shelter. The assistant coordinator, the second in command, asked me a question.

"Is <boss> coming in to work today? You were the last one to talk to him and I haven't seen him yet today."

ARE YOU KIDDING ME? How is it that my boss can have the audacity to not only excuse himself from a task that he himself scheduled, but he doesn't have the balls to even inform the other workers that his wife said he couldn't come out to play for the day. His wife must have his spine and balls in her purse under lock and key. By now, I'm fuming inside. I'm pretty sure I have a brain tumor and a few ulcers from this. I let the assistant boss know what I was told. She asked if I was going to need help doing the cutover, like I actually was project planning and all that, to which I said no because I don't even know what I'm doing.

Shortly after that, I guess my boss' wife let him run free for a few minutes, as he showed up. This was not to do work, but instead to leave the assistant boss with a list of what I needed to get done with the help of what was left of an 11 person department that was down 5 people, as two were already taking there vacation as well. Shortly after, he leaves and we all hop in our cars and drive on down.

We all get there and I'm still lost because I got thrown into a project already started without myself. As we walk into the building, the assistant boss who I would have assumed would take the role of boss and delegate roles, instead asks me what I want everyone to do. Some may have viewed it as them putting their faith in my abilities. I, however, viewed it as people looking for ways to absolve themselves of responsibility for the impending and certain failure that will (and has) occur. After taking a guess and just scattering people in hopes maybe someone would get something right, I took one of the other techs I consider a friend with me to listen to me complain while he helped me do my guess work. I would have grabbed another one of the techs, but I didn't want it to be obvious that I was just trying to keep my sanity and complain than working on something I had only guess work with.

So after day one of hooking up equipment, I had assumed it was all good and we all left. Oh boy was I wrong. We got network alerts galore! So on to day two. I grabbed a couple of techs to help me stare at stuff in hopes divine intervention may happen to fix the problem. Eventually we called in the ISP fiber engineer person to help us to see if the fiber may be the problem. When he got there, he assured us that he was as lost as we were. So we talked, tested, and fought the network. Day three was more of the same. With some luck, the network went up for a bit and I hightailed it out of there for a week Holiday vacation. The whole week was email alert after email alert that it wasn't working.

Over that week, my boss went in to try to fix the problem. It was never fixed while he was there. The week I got back, we tried to figure it out more. I got spanning tree set up and that seemed to get parts of the network working, so I took it at that and left. After school was back in session, I faced many work orders about network stuff not working. A couple of weeks later, I disabled all rapid spanning tree because the HP Procurves refused to accept a new root for RSTP, and just did plain old legacy STP. Over the course of the next couple of weeks, I found not one, not two, but three loops that were created by the cabling guys who helped move devices over after the cutover. I also found out that because of the change in contractors, there was a 50% failure rate when they were certifying the work that they had to redo.

I was swallowed up and now seem to live in the belly of the beast. Despite everything appearing fine, the network still has problems with VOIP quality randomly failing, WiFi connections dropping, fluctuating speeds when checking with speedtest.net, and a general disdain for work at the moment. On the lighter side, our Network Administrator is alive, awake, and back at work with plans to retire as soon as he hits the mark he needs.

I think the moral to the story is quite simply to not let work get to you, because then you have stress and problems at work. Or something like that. I'm not really good at morals.

Wednesday, March 14, 2018

Techs from the Crypt: I don't understand!

Realistically, I have not been a tech for very long, however I work on four different sites normally and interact with quite a lot of people. In my travels, I have come across some humorous, horrifying, and down right strange scenarios. I will now share them with you as part of an attempt at a running series I am calling "Techs from the Crypt" as homage to a favorite show of mine as a kid, Tales from the Crypt! Get it? Did I really need to explain it?

Moving on, I will make up names where needed, not so much to protect the people involved, but more so because I don't care enough to remember anyone's name. Luckily my time in retail has taught me how to cover up my anti-social nature and severe anger towards the more remedial tasks I'm expected to perform.

As a tech, I often come across a lot of people who say something along the lines of "I don't know," or "I don't understand." I often feel myself rewording what I say many times over to make a point or even get some acknowledgement that there is thought behind the vacant stare and hysterical smile of someone completely distraught because "the Internet is broken," or "I didn't do anything and it's no longer working." I'm sure almost every field you can be in has some variation of this interaction, be it with co-workers or clients. So now I submit to you a story about a lady who even when I think back on it, I find hard to believe she actually did all the things she did.

I work for a school system, so most of the people I help are teachers, those we trust to educate our youths. This particular case was at an elementary school. I received a work order about a teacher, we shall call her Mrs. Lego (part of an inside joke I may mention later), could not log into her Google account. Now when an account is setup on our system, a Google account is created. The problem is that you cannot log on to the account until after you change your password and then it gets synchronized with Google. I was quite confident in dealing with these cases as it was the beginning of the year and a lot of new teachers sent in identical work orders. With that, I marched off to the school to get the new teacher squared away.

So far it all seemed routine, and then I met the teacher. Now, let me be clear, she was and is a very nice lady who has never been intentionally rude to me even when I almost lost my temper. However, I would not say Mrs. Lego is the most receptive of people. After explaining to me her problem, I explained to her that she needed to change her password and showed her how. Now, our passwords have complexity requirements that are more strong than some of the other unconnected systems certain groups of staff need to use, usually due to just software limitations. Mrs. Lego tried to change her password to one she had previously setup on one of these particular systems. After it rejected her twice, I asked her to tell me the password. I then explained to her that because of the complexity requirements, it needs more to it, like a special character, maybe an exclamation mark at the end or something simple to remember like punctuation.

"But I want it to be the same password for everything," stated Mrs. Lego quite adamantly.

"Well, I understand that, but I cannot change these requirements. To access Google through your account, it's required to change your password."

"But I need them to be the same, or else what's the point?"

"To access Google, you NEED to change your password."

"Well, why can't I use this one?"

"Because there are requirements that need to be met."

"I don't think you're understanding me. I have my password for that set. I want them to be the same passwords."

"I get that, but unless you change both passwords, we can't make this one the same."

"No, you don't understand, I want my password-"

"To be the same as the other one, I get what you're saying but I cannot do that for you."

"Oh... well then there is no point in changing my password, how do I go back?"

"To access your Google account you HAVE to change your password."

"But I don't want to unless they can match."

This is the shortened version, as this conversation then continued on for some more time. Finally, my patients were gone. She was convinced I couldn't understand what she wanted so now she wants everything back but wants to access her Google account. I was so fed up, I did the only thing I could within my power. I fired up Google Admin Console and manually entered her default password and reluctantly left that be. However, it does not end there, oh no my friends. You see, she was a new teacher and had questions. Many questions. We have instructional people for such questions, but I was nice enough (dumb enough is more like it) to attempt to help to the best of my ability.

You see, at one point they thought it was a good idea to try to continue the use of old outdated computer by installing Ubuntu on them. As a Linux user, I informed them many times after I started and came across this that Ubuntu os a full featured OS, it is not lightweight or good for repurposing old computers. Mrs. Lego had two and one with Windows still on it. The Ubuntu computer log in automatically and the Windows they are recommended to use a class login. After explaining to her the class login and showing her the Windows computer, we discussed the Ubuntu. I explained to her they really are just there for web browsing, there is no Microsoft office or the like on them.

"So, they're not real computers?"

"No, they are just older computers that the schools are trying to reuse to save money."

"At the school system I come from, they stripped out the guts of old computers and called them Linux machines."

"...uh... yeah... same thing?..."

"Well, can I get real computers instead?"

"... uh... tell you what... put... put in a work order and... I'll see if I can scrap together some parts and get Windows on them..."

"Oh, that would be great, what do I put down?"

So I gave her word for word what to put down and then made a mental note to upgrade the RAM so it could handle Windows and try to get this wonderful woman out of my hair.

Then for a bit, we talked about the tech and differences between school systems. I thought it was over and I had weathered the storm, then while I was mid-sentence, she walked over to the door and said she needed to go pick up the kids... and walked out before I could even respond.

It's at times like those that I wonder how people get there in life, or how they often seem better off than me. Perhaps it's just the chipping away of my soul that makes the other side seem so much better. Mrs. Lego went on to terrorize our instructional techs after I told her to submit a work order for them to come by and walk her through the tech.

You see, when one of them was talking to her, he passed the comment that this stuff is easy, jut plug it together, like Lego...

"But I don't have any Legos."

And that, my friends, is the story of Mrs. Lego and why I don't understand. I hope you enjoyed. I have a few other stories I hope to get down before I forget too much detail and make it hard to put in a decent story form.

Sunday, January 7, 2018

Cabal install of wxHaskell CBool Error

So recently, I have been trying to dive back into programming with a little more oomph than a one-off project. I figured setting up a GUI along side would help keep me motivated. Now my current computer is an older Mac Book Pro because it is one of the few laptops in the house with a working battery. After diving around a large amount of fluff without any real substance, I decided going with wxHaskell would be the better choice. So I made sure wx was installed and did a cabal install wx, and wouldn't you know it that it failed.

src/haskell/Graphics/UI/WXCore/WxcTypes.hs:752:20: error:
    Ambiguous occurrence ‘CBool’
    It could refer to either ‘Foreign.C.CBool’,
                             imported from ‘Foreign.C’ at src/haskell/Graphics/UI/WXCore/WxcTypes.hs:126:1-16
                             (and originally defined in ‘Foreign.C.Types’)
                          or ‘Graphics.UI.WXCore.WxcTypes.CBool’,
                             defined at src/haskell/Graphics/UI/WXCore/WxcTypes.hs:750:1
    |
752 | toCBool :: Bool -> CBool
    |                    ^^^^^

src/haskell/Graphics/UI/WXCore/WxcTypes.hs:755:22: error:
    Ambiguous occurrence ‘CBool’
    It could refer to either ‘Foreign.C.CBool’,
                             imported from ‘Foreign.C’ at src/haskell/Graphics/UI/WXCore/WxcTypes.hs:126:1-16
                             (and originally defined in ‘Foreign.C.Types’)
                          or ‘Graphics.UI.WXCore.WxcTypes.CBool’,
                             defined at src/haskell/Graphics/UI/WXCore/WxcTypes.hs:750:1
    |
755 | withBoolResult :: IO CBool -> IO Bool
    |                      ^^^^^

src/haskell/Graphics/UI/WXCore/WxcTypes.hs:760:14: error:
    Ambiguous occurrence ‘CBool’
    It could refer to either ‘Foreign.C.CBool’,
                             imported from ‘Foreign.C’ at src/haskell/Graphics/UI/WXCore/WxcTypes.hs:126:1-16
                             (and originally defined in ‘Foreign.C.Types’)
                          or ‘Graphics.UI.WXCore.WxcTypes.CBool’,
                             defined at src/haskell/Graphics/UI/WXCore/WxcTypes.hs:750:1
    |
760 | fromCBool :: CBool -> Bool
    |              ^^^^^

src/haskell/Graphics/UI/WXCore/WxcTypes.hs:763:55: error:
    Ambiguous occurrence ‘CBool’
    It could refer to either ‘Foreign.C.CBool’,
                             imported from ‘Foreign.C’ at src/haskell/Graphics/UI/WXCore/WxcTypes.hs:126:1-16
                             (and originally defined in ‘Foreign.C.Types’)
                          or ‘Graphics.UI.WXCore.WxcTypes.CBool’,
                             defined at src/haskell/Graphics/UI/WXCore/WxcTypes.hs:750:1
    |
763 | foreign import ccall "intToBool" intToCBool :: Int -> CBool
    |                                                       ^^^^^

src/haskell/Graphics/UI/WXCore/WxcTypes.hs:764:48: error:
    Ambiguous occurrence ‘CBool’
    It could refer to either ‘Foreign.C.CBool’,
                             imported from ‘Foreign.C’ at src/haskell/Graphics/UI/WXCore/WxcTypes.hs:126:1-16
                             (and originally defined in ‘Foreign.C.Types’)
                          or ‘Graphics.UI.WXCore.WxcTypes.CBool’,
                             defined at src/haskell/Graphics/UI/WXCore/WxcTypes.hs:750:1
    |
764 | foreign import ccall "boolToInt" cboolToInt :: CBool -> Int
    |                                                ^^^^^
cabal: Leaving directory '/var/folders/8_/gbh6jvpj5dng4lmty_f9bjwh0000gn/T/cabal-tmp-50540/wxcore-0.92.3.0'
cabal: Error: some packages failed to install:
wx-0.92.3.0-GsmnFZQfuQrJCt8TV3hj5w depends on wx-0.92.3.0 which failed to
install.
wxcore-0.92.3.0-Cn2phmaLu563t5S6tEBzjw failed during the building phase. The
exception was:
ExitFailure 1

So with that big mess, it was time to hunt for what to do. With any luck this will be fixed soon because I generally have very little idea of what I'm doing. So the first step was to see if there was an alternative without manual intervention. Nope. So, I downloaded the package that was having the problem.

https://hackage.haskell.org/package/wxcore

Then we extract and open up src/haskell/Graphics/UI/WXCore/WxcTypes.hs and edit line 127 to

import Foreign.C hiding (CBool)

Save the file, open up a terminal. Navigate to the wxcore-0.92.3.0 folder and run

cabal install

After it hopefully succeeds, which it did for me, just simply

cabal install wx

I hope this helps anyone that needs and that the need doesn't last too long. I came across someone mentioning this fix on Stack overflow I think, but I can't find the link to it and don't plan to search too hard for it.


Tag Cloud

.NET (2) A+ (5) ad ds (1) addon (4) Android (4) anonymous functions (1) application (9) arduino (1) artificial intelligence (1) backup (1) bash (6) camera (2) certifications (3) comptia (5) css (2) customize (11) encryption (3) error (13) exploit (5) ftp (1) funny (4) gadget (4) games (3) GUI (5) hardware (16) haskell (6) help (14) HTML (3) imaging (2) irc (1) it (1) java (2) javascript (13) jobs (1) Linux (19) lua (1) Mac (4) malware (1) math (6) msp (1) network (13) perl (2) php (3) plugin (2) powershell (8) privacy (2) programming (24) python (10) radio (2) regex (3) repair (2) security (16) sound (2) speakers (2) ssh (1) story (5) Techs from the Crypt (5) telnet (1) tools (13) troubleshooting (11) tutorial (9) Ubuntu (4) Unix (2) virtualization (2) web design (6) Windows (16) world of warcraft (1) wow (1) wx (1)