I [had] four keybase.io invites.
Possibly awaiting a Blackberry Z30 on Verizon, I looked into the possibility of porting Android APKs, specifically RedPhone and TextSecure.
I have written a page on a method: Port an Android APK to Blackberry QNX (10.2).
Note that I have not tested if RedPhone and/or TextSecure are running perfectly. I am concerned by the following during APK verification:
(res/drawable/redphone_icon.png) icon too small:impact=2 (AndroidManifest.xml) uses-feature: android.hardware.bluetooth:impact=2 (AndroidManifest.xml) uses-feature: android.hardware.telephony:required minimal OS version=10.0.6:impact=2 (AndroidManifest.xml) targetSdkVersion: 14 is higher than 10:required minimal OS version=10.2:impact=1 (AndroidManifest.xml) uses-permission: com.google.android.c2dm.permission.RECEIVE:required minimal OS version=10.0.9:impact=2 (AndroidManifest.xml) uses-permission: DISABLE_KEYGUARD:impact=4 (AndroidManifest.xml) uses-permission: CALL_PRIVILEGED:impact=1 (AndroidManifest.xml) uses-permission: MODIFY_PHONE_STATE:impact=4 (AndroidManifest.xml) native-code: armeabi:impact=5 (org/thoughtcrime/redphone/audio/IncomingRinger.java:155) uses method: android.media.AudioManager$shouldVibrate:impact=1 (org/thoughtcrime/redphone/audio/IncomingRinger.java:67) uses method: android.media.MediaPlayer$setAudioStreamType:impact=1 (org/thoughtcrime/redphone/audio/OutgoingRinger.java:148) uses method: android.media.AudioManager$setBluetoothScoOn:impact=1 (org/thoughtcrime/redphone/audio/OutgoingRinger.java:147) uses method: android.media.AudioManager$startBluetoothSco:impact=1 (org/thoughtcrime/redphone/audio/OutgoingRinger.java:89) uses method: android.media.MediaPlayer$setAudioStreamType:impact=1 (org/thoughtcrime/redphone/audio/PacketLossConcealer.java) class: org.thoughtcrime.redphone.audio.PacketLossConcealer uses NATIVE access:impact=5 (org/thoughtcrime/redphone/audio/PacketLossConcealer.java) class: org.thoughtcrime.redphone.audio.PacketLossConcealer uses NATIVE access:impact=5 (org/thoughtcrime/redphone/audio/PacketLossConcealer.java) class: org.thoughtcrime.redphone.audio.PacketLossConcealer uses NATIVE access:impact=5 (org/thoughtcrime/redphone/audio/PacketLossConcealer.java) class: org.thoughtcrime.redphone.audio.PacketLossConcealer uses NATIVE access:impact=5 (org/thoughtcrime/redphone/audio/PacketLossConcealer.java) class: org.thoughtcrime.redphone.audio.PacketLossConcealer uses NATIVE access:impact=5 (org/thoughtcrime/redphone/util/AudioUtils.java:45) uses method: android.media.AudioManager$isBluetoothScoOn:impact=1 (org/thoughtcrime/redphone/util/AudioUtils.java:17) uses method: android.media.AudioManager$setBluetoothScoOn:impact=1 (org/thoughtcrime/redphone/util/AudioUtils.java:30) uses method: android.media.AudioManager$setBluetoothScoOn:impact=1 (org/thoughtcrime/redphone/util/AudioUtils.java:29) uses method: android.media.AudioManager$startBluetoothSco:impact=1 (org/thoughtcrime/redphone/codec/SpeexCodec.java) class: org.thoughtcrime.redphone.codec.SpeexCodec uses NATIVE access:impact=5 (org/thoughtcrime/redphone/codec/SpeexCodec.java) class: org.thoughtcrime.redphone.codec.SpeexCodec uses NATIVE access:impact=5 (org/thoughtcrime/redphone/codec/SpeexCodec.java) class: org.thoughtcrime.redphone.codec.SpeexCodec uses NATIVE access:impact=5 (org/thoughtcrime/redphone/codec/SpeexCodec.java) class: org.thoughtcrime.redphone.codec.SpeexCodec uses NATIVE access:impact=5 Missing PUSH configuration file: org.thoughtcrime.redphone.cfg :impact=3 Summary: =10; =2; =1; =4; =11; Impact Legend: =Severe; =High /context; =Medium /context; =Medium-low /context; =Minor;
Specifically, the “Severe” issues, and there being no Speex support on Blackberry. Neither works as of right now.
I’ve been considering whether or not to create a post with interviewing tips. My concerns mostly lay with the idea that my new co-workers will think that I’ve gamed them by creating some scheme, some strategy, but I have not (really). These questions and processes were built mostly by me, although I’ve also received some general guides from a few recruiters.
Listen, don’t speak, and maintain your cool head:
I blather on and on usually, I can digress like crazy, and I lose my train of thought regularly. My main focus was to simply not speak. Shutting your mouth can avoid digging a hole too deep to escape from. It also allows you time to gather valuable info you can pivot off of and use later in your responses and thank you email (we’ll get to that later, you classless IT person).
I went on an interview where I was asked to describe some things I’d do to maintain and improve their systems when I joined. I gave a thorough answer, including outlining several products I would use, and how I would use them; then the following situation arose:
- “So… now that you’ve listed the things you see yourself doing when you join us, what else would you do?”
- “okay… what else?”
- “Thanks… what else?”
- “You’re doing okay… what else?”
This situation is geared to gauge how you perform under pressure. Looking back, it became clear that I don’t like this style of management, so I consider it a dodged bullet (red flag). By the way, I freaked out. Lesson learned. You can handle this easily by saying something like “I’d continue to be proactive in seeking solutions to challenges that come to the surface as well as continue to seek improvements for existing challenges.”
Have three questions that show you’re seriously interested:
- “What direction do you see technology moving in the company?” This gives you an idea of how each person you speak with actually uses and “sees” tech.
- “What major pain points do you have?” “What did the last dude not do for you that you wish he had?” This will assist you with how to phrase and focus your responses to questions as well as your thank you Email.
- “What will my first three months be like?” This shows the interviewer you’re interested in reducing your risk, which means you’re attacking the situation with “maturity” and seriousness.
I was extremely surprised that a systems manager at a very successful company responded to the last question with “you’ve stumped me… I’ve never had anyone ask this before…” and he proceeded to not answer. After he couldn’t answer this question, it became clear that he didn’t read my resume. These are both red flags. I ended the interview; offer me all the money, all the exposure and knowledge… if there is risk I will fail because you can’t manage your team, because you don’t care enough to manage your team, I’m outta here!
Have several STARs ready:
A STAR is a simple: Create a bullet point list that covers the following four aspects of a project or thing you’ve done: situation, task, action, resolution. I’d suggest having four ready, and if you can, focus on your latest position. Okay, have at least two ready and be ready to fill a lot of time with them.
After my wife told me about STAR, I had a phone interview with an HR rep, she literally said “so explain a situation that you assessed, tasks you completed, and the eventual solution…” quoted nearly word for word.
If you can, practice.
Luckily I had my wife present while I was prepping. She did me a favor, threw on her suit jacket and dissected my resume at the kitchen table (throwing on her scary professional woman voice and shaking my hand when I entered the room). She’s not in IT so she avoided a majority of technical fire throwing, but it worked out. Okay… fine… her first job was with an IT recruiter, but it was when she was like 16.
Find a friend, sibling, or that neighbor you hear throwing out the garbage to sit down and grill you. I’d suggest buying the neighbor a six pack or bottle of wine, as they would really be best, since you don’t know them. “Hi, can you review my resume with me for like a half hour? I have beer and wine,” I’m sure that will work well. Try it.
Write a thank you:
- Don’t be classless. Write a thank you email. It’ll take five minutes of your time.
Pivot off of information you gathered during your recon phase (aka interview), particularly from the answers to the questions you’ve asked. Knowing the situation, distill relevant things into two sentences. Let’s say theoretically, you speak to the COO who says “this last guy was always late,” use the actual words “dependable” and “reliable” in your Thank You. [this did not happen to me]
Don’t be an idiot:
- Yes, don’t be an idiot.
- Think about what you’re physically doing (the observer: “This version of the observer is a portion of consciousness that metaphorically looks over the shoulder of the individual and helps to inform them of their actions and the reasons for them.”). I mean, you’re not sales, but don’t slump, and smile, even if it hurts you. Physically mirror your interviewer.
- Don’t be cocky, everyone will hate you.
- Don’t lie.
Are you not dependable or reliable? Don’t say so. If you say so, then your actions prove otherwise, people will begin to second guess you and that’s bad. If you suck as a paid employee, then continue to suck (get paid less or fired) or change your work ethic (and get paid more and not fired).
Think about who you’re speaking with:
- Systems Manager is probably looking for: pragmatic, functional, technical.
- COO is probably looking for: big picture, functional, execution driven.
- HR rep is probably looking for: verification you’re not a sociopathic cave dweller (unless that’s what they’re looking for), vibe, cultural fit, not an idiot (may have some basic questions).
- CEO/owner/partner: looking for pragmatism, I read an article that said CEOs like to “have conversations with candidates [because they lack the technical knowledge to grill you].”
All of these are techniques that should do one primary thing: reduce your nervousness.
You either are or are not able to do the job. The fundamental issue is expressing your skills correctly (whether they be technical or human).
Get emotionally and mentally ready:
You should want to reach right outside of your comfort zone, and if your new employer wants someone who is a master of everything they have, then you will not grow; and they will not help you grow. This is a red flag.
An employer who focuses on the potential of their human capital is where you want to be. You don’t need them. They (should) need you [but don't be cocky].
Okay. So I lasted about three days without posting, but I came across a few things that are very worth sharing, but aren’t quite worthy of a page.
Someone posted a link to DARPA sponsored projects to Hacker News yesterday. This should squelch that useless obsession I have with predictive analysis of non-existent data I have for the week. Specifically: lineup, lyra, immens, and…
BayesDB is a project that allows you to import data from CSV and provides a query language to query that data. Oh… it also uses Bayesian analysis to make predictions (within a tolerance) of future data. But we can already do some of this with scipy.stats.bayes_mvs()… but you can’t do it this simply.
Read more about it here. I have a feeling the next societal learning experience will be statistical literacy (previously computer literacy), and BayesDB is an effort that will assist. Don’t forget NimbleText and OpenRefine. Here is a paper on using Bayesian inference on network traffic.
I was disappointed to see offliberty failed to download a mix from soundcloud and mixcloud. I even wrote offliberty a bug report, and… received nothing back. After scratching my chin, I remembered my man SZ had written a last.fm downloader, and I figured I’d check in on the project. I was excited to see that not only does his last.fm downloader download from soundcloud and mixcloud, but about 20 other sites as well. Unfortunately, mixcloud downloading failed, so I dropped him an Email. He responded within a few hours, and offered that mixcloud changed their webapp and he would give reprogramming his scraper a shot. It took him two days and he was able to solve the problem today. So go grab Free Music Downloader from SZ. Don’t forget to donate.
The liklihood I will be posting here for a bit is low as I got a new job as a infrastructure dude at another place (yes, still in NYC).
Please continue to feel free to post comments or questions on any post or page and I will do my best to approve your posts and answer in a timely manner.
Reading a link on Hacker News simply titled “Nagios-plugins web site taken over by Nagios,” my man Michael Friedrich (who was employed by netways after working on icinga development and evangelism for at least a year) came out of the gates strong defending the open source community.
But yeah, as domain owner you can treat your community like shit, and still feel happy about it. It’s still a miracle why you didn’t fork the former Nagios Plugins project into your own enterprise product stack any sooner. Probably their work was just needed, and now you’re just throwing them away like rubbish.
Very interesting thread and topic. Even if open source is open source, contributing people don’t seem to like it when it turns into free as in beer and not free as in people. I’m sticking with monitoring-plugins.org.
Download and install MinGW:
1) download the mingw installer.
2) run it.
3) install only msys-base
1) verify c:\mingw\bin is in your PATH
2) setup fstab:
copy c:\MinGW\msys\1.0\etc\fstab.sample c:\MinGW\msys\1.0\etc\fstab echo C:\MinGW\ /usr/local >> c:\MinGW\msys\1.0\etc\fstab #echo C:\MinGW\include /include >> c:\MinGW\msys\1.0\etc\fstab
3) Start mingwin:
Install some packages:
mingw-get install gcc g++ mingw32-make msys-patch msys-wget msys-unzip msys-libregex msys-regex mingw32-pthreads-w32 msys-zlib mingw32-bzip2 cp /include/* /mingw/include/
cd mkdir gperf && cd gperf wget --no-check-certificate https://downloads.sourceforge.net/project/gnuwin32/gperf/3.0.1/gperf-3.0.1-bin.zip unzip gperf-* cp ./bin/gperf.exe /bin/
cd wget http://www.gdsw.at/gnu/gnu-win32/x86/release/libevent/libevent-2.0.21-1-src.tar.bz2 tar xvf libevent-* && rm -f libevent-2.0.21-1-src.tar.bz2 cd libevent-* ./configure make && make install
cd wget --no-check-certificate https://downloads.sourceforge.net/project/pcre/pcre/8.34/pcre-8.34.tar.gz tar zxvf pcre-* cd pcre-* ./configure --prefix=/mingw --enable-pcre16 --enable-pcre32 --enable-unicode-properties --enable-newline-is-any make && make install
Install mman library:
cd mkdir mmanlib cd mmanlib wget --no-check-certificate http://mman-win32.googlecode.com/svn/trunk/Makefile wget --no-check-certificate http://mman-win32.googlecode.com/svn/trunk/configure wget --no-check-certificate http://mman-win32.googlecode.com/svn/trunk/mman.c wget --no-check-certificate http://mman-win32.googlecode.com/svn/trunk/mman.h wget --no-check-certificate http://mman-win32.googlecode.com/svn/trunk/test.c ./configure make && make install cp mman.h /mingw/include/
Install tokyo cabinet port:
cd mkdir tokyocabinet cd tokyocabinet wget --no-check-certificate https://github.com/jfnavarro/Mingw-TokyoCabinet/archive/master.zip unzip master cd Mingw-* ./configure make && make install
cd wget http://semicomplete.googlecode.com/files/grok-1.20110630.1.tar.gz tar zxvf grok-*
cd mkdir rpcgen && cd rpcgen wget --no-check-certificate https://downloads.sourceforge.net/project/gnuwin32/sunrpc/4.0/sunrpc-4.0-bin.zip unzip sunrpc-* cp ./bin/rpcgen.exe /bin/ #help rpcgen find cpp.exe (see `strings $(which rpcgen) | grep cpp`) cp /usr/local/bin/cpp.exe /lib/cpp
Modify grok makefile:
cd cd grok-* sed s@rpcgen@"rpcgen\ -Y /usr/local/bin"@ -i Makefile make