assembly language – Jupiter Broadcasting https://www.jupiterbroadcasting.com Open Source Entertainment, on Demand. Thu, 29 Nov 2018 19:03:12 +0000 en-US hourly 1 https://wordpress.org/?v=5.5.3 https://original.jupiterbroadcasting.net/wp-content/uploads/2019/04/cropped-favicon-32x32.png assembly language – Jupiter Broadcasting https://www.jupiterbroadcasting.com 32 32 Language: Assembly | BSD Now 274 https://original.jupiterbroadcasting.net/128241/language-assembly-bsd-now-274/ Thu, 29 Nov 2018 11:03:12 +0000 https://original.jupiterbroadcasting.net/?p=128241 ##Headlines ###Assembly language on OpenBSD amd64+arm64 This is a short introduction to assembly language programming on OpenBSD/amd64+arm64. Because of security features in the kernel, I have had to rethink a series of tutorials covering Aarch64 assembly language on OpenBSD, and therefore this will serve as a placeholder-cum-reminder. OpenBSD, like many UNIX and unix-like operating systems, […]

The post Language: Assembly | BSD Now 274 first appeared on Jupiter Broadcasting.

]]>

##Headlines
###Assembly language on OpenBSD amd64+arm64

This is a short introduction to assembly language programming on OpenBSD/amd64+arm64. Because of security features in the kernel, I have had to rethink a series of tutorials covering Aarch64 assembly language on OpenBSD, and therefore this will serve as a placeholder-cum-reminder.

OpenBSD, like many UNIX and unix-like operating systems, now uses the Executable and Linkable Format (ELF) for its binary libraries and executables. Although the structure of this format is beyond the scope of this short introduction, it is necessary for me to explain part of one of the headers.

Within the program header there are sections known as PT_NOTE that OpenBSD and other systems use to distinguish their ELF executables – OpenBSD looks for this section to check if it should attempt to execute the program or not.

  • Our first program: in C!

It’s often a good idea to prototype your assembly programs in a high level language such as C – it can then double up as both a set of notes and a working program that you can debug and compile into assembly language to compare with your own asm code.

  • See the article for the rest on:
  • Our first program: in x86-64 Asm (AT&T/GAS syntax)
  • Our first program: in inline x86-64 assembly
  • Our first program: in x86-64 asm (NASM syntax)
  • Our first program: in ARMv8 AArch64 assembly

###Using bhyve for FreeBSD Development

  • The Hypervisor

The bhyve hypervisor requires a 64-bit x86 processor with hardware support for virtualization. This requirement allows for a simple, clean hypervisor implementation, but it does require a fairly recent
processor. The current hypervisor requires an Intel processor, but there is an active development branch with support for AMD processors.
The hypervisor itself contains both user and kernel components. The kernel driver is contained in the vmm.ko module and can be loaded either at boot from the boot loader or at runtime. It must
be loaded before any guests can be created. When a guest is created, the kernel driver creates a device file in /dev/vmm which is used by the user programs to interact with the guest.
The primary user component is the bhyve(8) program. It constructs the emulated device tree in the guest and provides the implementation for most of the emulated devices. It also calls the kernel driver to execute the guest. Note that the guest always executes inside the driver itself, so guest execution time in the host is counted as system time in the bhyve process.
Currently, bhyve does not provide a system firmware interface to the guest (neither BIOS nor UEFI). Instead, a user program running on the host is used to perform boot time operations including loading the guest operating system kernel into the guest’s memory and setting the initial guest state so that the guest begins execution at the kernel’s entry point. For FreeBSD guests, the bhyveload(8) program can be used to load the kernel and prepare the guest for execution. Support for some other operating systems is available via the grub2-bhyve program which is available via the sysutils/grub2-bhyve port or as a prebuilt package.
The bhyveload(8) program in FreeBSD 10.0 only supports 64-bit guests. Support for 32-bit guests will be included in FreeBSD 10.1.

  • See the article for the very technical breakdown of the following:

  • Network Setup

  • Bridged Configuration

  • Private Network with NAT

  • Using dnsmasq with a Private Network

  • Running Guests via vmrun.sh

  • Configuring Guests

  • Using a bhyve Guest as a Target

  • Conclusion

The bhyve hypervisor is a nice addition to a FreeBSD developer’s toolbox. Guests can be used both to develop new features and to test merges to stable branches. The hypervisor has a wide variety of uses beyond developing FreeBSD as well.


##News Roundup
###Games on FreeBSD

What do all programmers like to do after work? Ok, what do most programers like to do after work? The answer is simple: play a good game! Recently at the Polish BSD User Group meetup mulander was telling us how you can play games on OpenBSD. Today let’s discuss how this looks in the FreeBSD world using the “server only” operating system.

  • XNA based games

One of the ways of playing natively is to play indie games which use XNA. XNA is a framework from Microsoft which uses .NET, for creating games. Fortunately, in the BSD world we have Mono, an open source implementation of Microsoft’s .NET Framework which you can use to run games. There is also FNA framework which is a reimplementation of XNA which allows you to run the games under Linux. Thomas Frohwein, from OpenBSD, prepared a script, fnaify. Fnaify translate all dependencies used by an FNA game to OpenBSD dependencies.
I decided to port the script to FreeBSD. The script is using /bin/sh which in the case of OpenBSD is a Korn Shell.

I didn’t test it with many games, but I don’t see any reason why it shouldn’t work with all the games tested by the OpenBSD guys. For example, with:

  • Cryptark

  • Rouge Legacy

  • Apotheon

  • Escape Goat

  • Bastion

  • CrossCode

  • Atom Zombie Smasher

  • Open-Source games

In FreeBSD and OpenBSD we also will find popular games which were open sourced. For example, I spend a lot of time playing in Quake 3 Arena on my FreeBSD machine. You can very simply install it using pkg: # pkg install ioquake3

Then move the files for the skins and maps to the .ioquake3 directory from your copy of Quake. In the past I also played UrbanTerror which is a fully open source shooter based on the Quake 3 Arena engine. It’s is also very easy to install it from ports: # pkg install iourbanterror

In the ports tree in the games directory you can find over 1000 directories, many of them with fully implemented games. I didn’t test many games in this category, but you can find some interesting titles like:

  • openxcom (Open-source re-implementation of the original X-Com)
  • openjazz (Free re-implementation of the Jazz Jackrabbit™ game engine)
  • corsixth (Open source re-implementation of Theme Hospital)
  • quake2
  • openra (Red Alert)
  • openrct2 (Open source re-implementation of RollerCoaster Tycoon 2)
  • openmw (Open source engine reimplementation of the game Morrowind)

All those titles are simply installed through the packages. In that case I don’t think FreeBSD has any difference from OpenBSD.

  • Wine

One of the big advantages of FreeBSD over OpenBSD is that FreeBSD supports wine. Wine allows you to run Windows applications under other operating systems (including mac). If you are a FreeBSD 11 user, you can simply fetch wine from packages: # pkg install i386-wine

To run Windows games, you need to have a 32-bit wine because most of the games on Windows are built on 32-bits (maybe this has changed – I don’t play so much these days). In my case, because I run FreeBSD-CURRENT I needed to build wine from ports. It wasn’t nice, but it also wasn’t unpleasant. The whole step-by-step building process of a wine from ports can be found here.

  • Summary

As you can see there are many titles available for *BSDs. Thanks to the FNA and fnaify, OpenBSD and FreeBSD can work with indie games which use the XNA framework. There are many interesting games implemented using this framework. Open source is not only for big server machines, and there are many re-implementations of popular games like Theme Hospital or RollerCoaster Tycoon 2. The biggest market is still enabled through wine, although its creates a lot of problems to run the games. Also, if you are an OpenBSD user only this option is not available for you. Please also note that we didn’t discuss any other emulators besides wine. In OpenBSD and FreeBSD there are many of them for GameBoy, SNES, NeoGeo and other games consoles.


###FreeBSD For Thanksgiving

I’ve been working on FreeBSD for Intel for almost 6 months now. In the world of programmers, I am considered an old dog, and these 6 months have been all about learning new tricks. Luckily, I’ve found myself in a remarkably inclusive and receptive community whose patience seems plentiful. As I get ready to take some time off for the holidays, and move into that retrospective time of year, I thought I’d beat the rush a bit and update on the progress
Earlier this year, I decided to move from architect of the Linux graphics driver into a more nebulous role of FreeBSD enabling. I was excited, but also uncertain if I was making the right decision.
Earlier this half, I decided some general work in power management was highly important and began working there. I attended BSDCam (handsome guy on the right), and led a session on Power Management. I was honored to be able to lead this kind of effort.
Earlier this quarter, I put the first round of my patches up for review, implementing suspend-to-idle. I have some rougher patches to handle s0ix support when suspending-to-idle. I gave a talk MeetBSD about our team’s work.
Earlier this month, I noticed that FreeBSD doesn’t have an implementation for Intel Speed Shift (HWPstates), and I started working on that.
Earlier this week, I was promoted from a lowly mentee committer to a full src committer.
Earlier today, I decided to relegate my Linux laptop to the role of my backup machine, and I am writing this from my Dell XPS13 running FreeBSD

vandamme 13.0-CURRENT FreeBSD 13.0-CURRENT #45 881fee072ff(hwp)-dirty: Mon Nov 19 16:19:32 PST 2018 bwidawsk@vandamme:/usr/home/bwidawsk/usr/obj/usr/home/bwidawsk/usr/src/amd64.amd64/sys/DEVMACHINE amd64

6 months later, I feel a lot less uncertain about making the right decision. In fact, I think both opportunities would be great, and I’m thankful this Thanksgiving that this is my life and career. I have more plans and things I want to get done. I’m looking forward to being thankful again next year.


###hammer2: no space left on device on Dragonfly BSD

  • The Issue

hammer2 does not actually delete a file when you rm or unlink it. Since recovery of the file is possible (this is the design of hammer2), there will still be an entry taking up data. It’s similar to how git works.
Even with 75% usage listed here, the filesystem could still have filled up. If you are using it as your root filesystem, then attempts to clean up data may fail. If the kernel panics over this, you will see something like this.

  • The Fix

If you have a recent enough version of the rescue ramdisk installed, on bootup you can press ‘r’ and access the rescue ramdisk. Your provider will have to offer some sort of remote interface for interacting with the operating system before it boots, like VNC or IPMI. You can then mount your filesystem using:

[root@ ~]# mkdir /tmp/fs
[root@ ~]# mount_hammer2 -o local /dev/vbd0s1a /tmp/fs

If you receive an error that /sbin/hammer2 is not found, then your rescue ramdisk is not up to date enough. In that scenario, download the latest 5.2 iso from dragonflybsd.org and boot from the cd-rom on your virtual machine or physical device. Just login as root instead of installer.
If the mount does succeed, then all you have to do is run the following twice:

[root@ ~]# /sbin/hammer2 bulkfree /tmp/fs

If you do not have enough memory on your machine, you may need to mount swap. Add your swap partition to the /etc/fstab and then do:

[root@ ~]# swapon -a

Once you have ran the bulkfree command twice, the usage reported by df -h will be correct. However, there is a chance on reboot that a core dump will be placed in /var/crash/ so be prepared to have plenty of space free in case that happens. You should also delete any files you can and run the bulkfree operation twice afterwards to clear up additional space.


##Beastie Bits


##Feedback/Questions


  • Send questions, comments, show ideas/topics, or stories you want mentioned on the show to feedback@bsdnow.tv

The post Language: Assembly | BSD Now 274 first appeared on Jupiter Broadcasting.

]]>
Humanitarian Tech | WTR 31 https://original.jupiterbroadcasting.net/83817/humanitarian-tech-wtr-31/ Wed, 17 Jun 2015 10:29:04 +0000 https://original.jupiterbroadcasting.net/?p=83817 Lisha is the Executive director of Geeks without bounds, an accelerator for humanitarian projects. She has found a great way to mix her desire to do humanitarian work along with technology! Thanks to: Get Paid to Write for DigitalOcean Direct Download: MP3 Audio | OGG Audio | Video | HD Video | YouTube RSS Feeds: […]

The post Humanitarian Tech | WTR 31 first appeared on Jupiter Broadcasting.

]]>

post thumbnail

Lisha is the Executive director of Geeks without bounds, an accelerator for humanitarian projects. She has found a great way to mix her desire to do humanitarian work along with technology!

Thanks to:

DigitalOcean

Direct Download:

MP3 Audio | OGG Audio | Video | HD Video | YouTube

RSS Feeds:

MP3 Feed | OGG Feed | iTunes Feed | Video Feed

Become a supporter on Patreon:

Foo

Show Notes:

Full transcription of previous episodes can be found below:

Transcription:

ANGELA: This is Women’s Tech Radio.
PAIGE: A show on the Jupiter Broadcasting Network interviewing interesting women in technology. Exploring their roles and how they are successful in technology careers. I’m Paige.
ANGELA: And I’m Angela.
PAIGE: So, Angela, today we interviewed Lisha Sterling. She is the executive director for Geeks Without Bounds. She has a pretty awesome story where she started out actually doing humanitarian aid work, ended up in programing, and then wound back up in humanitarian aid work with programing. It’s a fascinating story. Geeks Without Bounds is a great program, and I’m super excited to have her on the show.
ANGELA: Me too. But before we get into the show, I want to tell you about DigitalOcean. If you go to digitalocean.com and you use the promo code heywtr, you can save $10.00, which turns out is a two month rental of a server. Right? Because it’s only $5.00 a month. They have datacenter locations in New York, San Francisco, Singapore, AMsterdam, and London. And basically, they’re a cloud hosting provider. You can spin up a cloud server in 55 seconds. That include 512 megabytes of RAM, 20 gigabytes SSDS, i CPU, and i terabyte transfer. And they also pay authors $100 to $200.00 to technical tutorials. So, if you happen to already use DIgitalOcean or want to try it, and then like it so much that you want to write about it, you can get paid for that. After, of course, you save on two months of service.
PAIGE: Yeah, and their tutorials are bar none some of the best on the internet. I even end up there for things not for my DIgitalOcean VPS, which by the way, with those SSDs is disgustingly fast.
ANGELA: So, if you use heywtr, you support Women’s Tech Radio. ANd turns out, if you did not remember to enter a promo code when you started DigitalOcean, just go try to put in in there.
PAIGE: Yeah. I actually did that and it totally worked for mine.
ANGELA: After the fact.
PAIGE: Like a couple years ago when Coder Radio had it. That was sweet.
ANGELA: Yep, so you can still use it. So heywtr. Go to digitalocena.com
PAIGE: Yeah. And we got started with our interview with Lisha by asking her to explain her current position and what she’s up to in technology.
LISHA: I’m the Executive Director at Geeks Without Bounds and we support humanitarian open source projects through a combination of hackathons and an accelerator program. So, my work these days sort of entangles both my early career in international aid work and charity work and my academic side. I studied Latin American studies in college. And the rest of my professional life, which has been software development and systems engineering. And now I get to use technology to do disaster response and humanitarian aid and international development work.
PAIGE: Wow. That’s a pretty awesome way to use technology.
ANGELA: Yeah it is.
PAIGE: So that sounds like a pretty big jump from, you know, international aid work into software development. Can you tell me the story of like how that came to be for you?
LISHA: Yeah. So, first off, being, you know, a privileged white kid, i had my first computer when I was eight years old. Actually, my dad got me two Timex Sinclair 1000s. One for his house and one for my moms’ house. And connected it up to the black and white TV and put rubber bands around it so that the extra 16K of memory wouldn’t disconnect while we programmed. And thus I began my journey as a new programer learning basic and then going there’s a thing called Assembly Language. And I got involved with a computer club and was your basic tomboy geek girl. Then I had my first kid when I was 17 and went off to El Salvador. Did aid work during the war and during the first year of the peace. Came back to the US, did a bunch of work with refugees. Had another kid. Decided that I should probably go to college. And since I’d been working with Central American and in Central America, it was obvious what I was going to study. I was going to study Latin American studies and go do more of the same sort of stuff. But being a mom with two small kids, I, and no real skills or degree, I was able to make $4.25 an hour and my childcare cost like $7.50 an hour. The math doesn’t add up.
ANGELA: No. Now that I have three, daycare just isn’t even an option.
LISHA: Yeah. So one of my friends from my young computing days, a young man that I dated when I was like 11 and 12, and our first date was actually to a tech conference at the Moscone Center.
ANGELA: That’s adorable.
LISHA: So, you know, we’re still friends as adults. And he said to me, why don’t you get a job as a programer? And I was like, you’re crazy. I don’t have a degree in CS. I can’t program. He’s like, don’t be stupid. Nobody cares about your CS degree. Just tell them you can program. Show them some code and they’ll let you do it. But his caveat came. You must charge $25 an hour. I was like, I can’t charge $25 an hour. He’s like, no if you do not charge $25 an hour I will never speak to you again.
ANGELA: Oh my goodness.
PAIGE: So I’m going to pause you there, because this is a really interesting question that I always dig around. Why could you not charge $25 an hour?
LISHA: Well, because I was getting $4.25 an hour. The idea-
ANGELA: Perceived value. Perceived value.
LISHA: Right. The idea that I was going to go to somebody and have balls enough to say, yeah I’m a programer. I don’t have any degrees or any proof that i can actually do this, but you should totally pay me $25 an hour for it.
ANGELA: Inferiority complex. Yep. I’m familiar with all of that.
LISHA: Yeah. Yeah. So, but, you know my friendship was on the line and my need to take care of my children was on the line. So I did it and just about keeled over the first time somebody said, yes we will hire you.
ANGELA: Wow.
PAIGE: What did it take to get your foot in the door? Was it really just like you friend said? You just showed up and were like, look I can program. Let’s go.
LISHA: Actually, yeah. It literally was that easy. So I went for low hanging fruit right at the start, since I was at community college at the time. And so at the time I was working as an administrative assistant for Sybase. This probably puts the timing into, into perspective.
PAIGE: Your choice of computerm, your choice of computer at the top made that pretty clear.
LISHA: Right. Right. Right. Yeah, so I was working for Sybase as an administrative assistant and had gotten the opportunity to play with web stuff there on the side. The first browsers were out, but nobody was really using them. So even at Sybase they were like, this is stupid. Why are you wasting your time with this? But of course I was going to college so I went to all of my professors and I said have you seen this thing called the web? You should check this out. You can put your research up and you can put your classwork stuff up.
PAIGE: Which is exactly what the web was originally built for, was to share research.
LISHA: Right. Exactly. And they said, oh wow that’s neat. And yeah could you do that for me. So that was how i got my foot in the door. ANd then, you know, I got a little bit braver and I went to the administrators of the Parelta College District. So I went to the administrators at the Parelta COllege District and said, you know, you guys should really have a better website. And they said, you know what, you’re right. And so I got to do some contracting for them. And then I found out about dice.com and atually the saem friend that told me that I had to charge $25 or neer speak to me again told me about Dice. And at the time, almost nobody knew about it and you had to get your Dice listings off of Gopher. And he told me, don’t tell anyone about this, because when everyone knows about it then it’s going to start getting harder to get jobs. So you’re not allowed to tell anybody about it. So, you know, there I was in the early ‘90s using Dice by Gopher. But I found some jobs and then recruiters started contacting me and I found that I could actually work from home, which by that time was actually the UC Berkeley family housing. I was able to basically pay for my own schooling with scholarships, pay for my kids’ daycare and private school with programming. And everybody kept saying why aren’t you studying computer science, and I would say I’m already working in computer science, why would I get a degree in it? But then eventually I finished my bachelor’s degree and I intended to on with grad school, but I had that moment where it’s like I need some time without poverty and working just enough hours to keep us afloat is, we’ve done that for a while. I need to spend some time working full time. And then work ended up eating my life for oh, 20 years.
PAIGE: So at that point you got a full time job in computer science somewhere?
LISHA: Yeah. At that time I ended up getting full time work. I worked, while in the mid-90s I worked at Wells Fargo Bank doing problem and change tracking during the Y2K reprograming stuff. Anybody who says that the Y2K thing was nothing, was not there to program all the fixes.
PAIGE: Yeah. It only wasn’t a thing because you guys were doing it.
ANGELA: Yeah.
LISHA: Right. Exactly. It wasn’t a thing because there were a lot of people working really hard to make sure it was not a thing. So I was there. I worked, i did random contracts for media companies and whatnot in the San Francisco Bay area. Amazon, I worked at Amazon in the UK. That kind of thing.
PAIGE: And then eventually stumbled back into Geeks Without Bounds?
LISHA: Yeah. So my first sort of hit between the eyes was 2001 and after 911 I said I’m not working on any more Microsoft or any more closed sourced from here on out. I’m only going to do open source, because I’ve already sold my soul and I’m not doing humanitarian work, at least I’m going to do code work that I care about. So from 2001 onward I was working almost exclusively on open source software. And then even that kind of hit me at some point. I’m like, I went to college so that I could do humanitarian work. Why am I still writing code? And so I decided to just quit everything and figure out what I was going to do with my life, when I grow up. And I declared myself an un-graduate student. If you’re familiar with the idea of unschooling, which is like homeschooling without a curriculum.
ANGELA: Yep.
LISHA: There’s also such a thing as un-college. And I don’t know, there might be somebody else in the world who came up the with idea at about the same time I did, or even before I did, but I came up with this sort of independently. Where I had been thinking about going back to grad school and then said why would I get myself into more debt? I’m going to un-grad school. So that’s what I did. And that ended up getting me into an organization called The School Factory, which is the fiscal sponsor for Geeks Without Bounds. And then that, of course, led me into Geeks Without Bounds. I started out as a volunteer. Then i was the developer coordinator. And then last year I became the executive director.
PAIGE: Congratulations.
ANGELA: Yeah.
LISHA: Thank you.
PAIGE: That’s a really awesome journey. It’s all over the map, but it’s very personal . And I love that about tech. It’s not a straight and narrow path.
LISHA: Yeah. Yeah. And there’s lots of ways you can come to tech and there’s lots of things you can do with the tech once you’re in it or playing with it. It’s not just one tool. It’s like all these different tools. It’s kind of like saying, what can you do with wood? Well, you can do all sorts of things with wood.
PAIGE: Right. What do you want to do with wood?
LISHA: RIght.
PAIGE: Yeah. So, I think a lot of people would hear you story and stay, well you kind of had perfect timing. You’re like in the Bill Gates timing era, where if you just caught on to the right thing at the right time you were good to go. How would you respond to somebody saying that in today’s climate? Oh, I couldn’t just show up and say I know how to code, pay me $25 an hour, let’s go, kind of a thing. Because I would argue that in some ways we’re kind of seeing that again, but what’s your thoughts?
LISHA: I think we’re absolutely seeing that again. I think that right now is a really good time to ride the wave of open source into your dream job. ANd so, a little shameless promotion here. At Geeks Without Bounds, one of the programs that we have is an internship program and we take novice developers who have, who have learned some programming skills but have either never gotten any job experience or they don’t know how to use GitHub and work in a team, or go through issue tracking and figure out how to pick a project out of the issues, you know, that kind of thing. We give them mentorship. We have them work on some of the humanitarian projects in our ecosystem and we try to shove them at as many other opportunities to get a real job as possible. Sometimes we also manage to get a grant here or there to get them a stipend, but most of them are sort of slave labor in exchange for lots of mentorship. And they’re code up on GitHub so that they can show it to other people. And we have had some really great success with people coming into that program. Doing some amazing work on one project or another over the course of three months, five months, six months, and then going on to get a real job in programming. We had one guy who had studied aeronautical engineering. Got all the way through his degree and realized that that was not what he wanted to do with his life and what he really wanted to do was be a programer.
PAIGE: That’s a big investment to make that shift.
LISHA: Exactly. And I snagged him and I was like, let me put you to work. And it was fantastic. He got projects that he really enjoyed working on. He learned a whole bunch of stuff very fast. He managed to get a stipend and then he got a paid internship and then, you know, he’s working full time as a developer in Chicago and, you know, you can totally do that. And you don’t have to have to have a bachelor’s degree to begin with either. Anybody really can do that.
PAIGE: So do you take a lot of people who have maybe done either a lot of self-taught stuff on the internet now or boot camp graduates? How do you people kind of end up ready to go into Geeks Without Bounds internships?
LISHA: All of the above. I’ve had people who were in their junior or senior year of college decide to spend the summer working on projects with us. I’ve had people that were totally and completely self-taught. And there’ve been people who’ve done some sort of boot camp like experience. So they knew a bit more about how to work in teams and things like that, but they just wanted to get some more work experience while they were looking for a job. They already knew how to look for a job, they just wanted to keep their, the code lines on GitHub up while they were looking for that job. So, yes.
PAIGE: And that’s, I mean that’s one of the biggest recommendations I give to anybody who’s going through boot camp is keep committing. Just keep getting it up there.
LISHA: Absolutely.
PAIGE: So that’s kind of the intern side of it. How about in the nonprofit side. How does a nonprofit get involved with you? Are they just finding you online? Are you doing events or something to kind of bring them in? What does that look like?
LISHA: We end up meeting people in all sorts of situations. Sometimes as conferences or at say disaster response drills. Sometime we’ll meet people there. Sometimes it’s literally look for who’s in the area that needs support right now. And sometimes people come to us. And then, basically we just kind of have lots of conversations and develop relationship over time and let people know that if they have challenges that they think that technology could help them with, that we are happy to help them craft that into a challenge that somebody can actually address. And when we’re crafting or curating challenges for hackathons, we try to create a challenge that can actually be addressed in a weekend. So there might be back story and a problem that clearly this is not going to be solved in a weekend, but here’s the backstory and here’s the piece we want to accomplish this weekend.
PAIGE: So you guys kind of handle the project managy end of that prepping it to go into the hackathon?
LISHA: Right. Exactly. And then, so once you get a starting point basically, if you’ve got, say an app that sort of is attempting to deal with the big pictures, um, then you can break that down into lots of different challenges and you can take that from one humanitarian hackathon to next to the next. And the great thing about that is that you start with a couple of people who got interested in the project at the first hackathon and maybe on those, maybe two people will stay on board and keep working on the project over time.
PAIGE: Which is one of the biggest challenges with hackathons is actually getting people to commit, almost.
LISHA: Exactly. So you take the project to the next hackathon. And let’s say four or five people work on it and one of those people decides they want to keep working on the project long term. So now you’ve just snowballed your team. You’ve got two people or three people instead of just the people from the original hackathon. And then you take it to the next one and it gets stickier. And the more work has been done and the larger the core team is, the stickier the ball gets as it goes from one hackathon to the next.
PAIGE: It builds momentum.
LISHA: Yeah. It builds momentum and you get to a certain point where you can actually have a whole hackathon where all the challenges that are being presented are all based around that one piece of software. So, for instance, one of the projects that started at a hackathon, Taarifa, that project has had multiple hackathons that are just about Taarifa. Where all of the challenges are all, either bug fixes or feature request for Taarifa that have ranged from improved the documentation to create a Swahili translation for all of the text, to fix the security bugs, to create new features. And that team is one of, one of the most amazing teams that we’re working with right now, actually. I’m pretty impressed with where that project has ended up. It’s being used by the World’s Bank in many countries in Africa. We at Geeks Without Bounds are part of a consortium that is being supported by HDAF, UK aid to put Taarifa into the water system in Tanzania in order to allow citizens to report to the government when water pumps and spigots and other water points are broken. And allows the government to keep track of what is working and what is broken in the water infrastructure everywhere in the country.
PAIGE: Crowdsourcing water maintenance. That’s awesome.
ANGELA: That is awesome.
LISHA: Exactly. Exactly. And Taarifa was originally developed for water management, actually. But now it’s being used for tracking education systems, healthcare systems, and this summer I’m going down to Ecuador to work with people from the Kofan community in Northern Ecuador in order to use Taarifa to track pollution and encroachment in the Amazon Jungle. So pretty awesome little piece of software there.
PAIGE: Yeah. So you have a formal commitment in your life to only work on open source software. Is that something that’s carried forward that Geeks Without Bounds is also doing when they’re doing these projects with nonprofits?
LISHA: Yes.
PAIGE: Are you largely open source, mostly? What’s the deal?
LISHA: It’s all open source. We specifically work on open source humanitarian projects. So open source projects that for whatever reason we can’t find a way to call it humanitarian, we don’t work on those. We’ve managed to find ways to call lots of ways humanitarian though. Today we were working in PGP email app for Firefox OS phones.
PAIGE: Wow.
LISHA: And I consider that to be a humanitarian issue because Firefox OS phones are marketed to low income people in developed countries. And to people in the least developed countries on the planet. So, in other words, Firefox OS phones are being marketed to vulnerable people. And as a system it doesn’t have the security and privacy pulls that an iPhone or an Android phone has. And at the moment there’s no guardian project for Firefox OS. So we’re trying to kick one off, basically.
PAIGE: Yeah. So I’m going to jump in just for anybody listening who doesn’t know, PGP is an email encryption program called Pretty Good Privacy. It’s kind of the de facto standard right now for email encryption. Usable by anybody. If you’re interested in having encrypted email, there’s tons of stuff online. And one of our former guests, uh Snubs, has some awesome tutorials on Hak5 about how to do that if you want to check it out. But yeah, so privacy and security.
LISHA: And for newbies to PGP who use hotmail or yahoo mail or Gmail, I would recommend looking up a program called Mailvelope. It’s a Firefox and Chrome plugin. So you just plug it into your browser and then it recognizes that you’re on a webmail site and it will allow you to encrypt your email in webmail. Which is pretty cool.
PAIGE: Yeah. That’s pretty awesome. I mean this project you’re involved with, I’m not going to lie, it touches my heart in a very special way. I think that technology can change the world if we let it. And I think getting more people involved at that level is just phenomenal. The way that you’re doing it is great. If people want to find you how do they do that? To find Geeks WIthout Bounds, to get involved either as a nonprofit or as a coder, whatever?
LISHA: Whatever, yeah. So we’re online at gwob.org.
ANGELA: Thank you for listening to this episode of Women’s Tech Radio. Remember, you can go to jupiterbroadcasting.com for the show notes and a full transcription, as well as the contact form. Drop down the show drop down to Women’s Tech Radio and send us your feedback or suggestions on who you’d like to hear on the show.
PAIGE: You can also check us out on iTunes and our RSS feed is linked at our show page on Jupiter Broadcasting. If you have a moment, please leave us a review on iTunes. Those help out the show and also lets us know what you think. And also, follow us @heywtr on Twitter. We’ll talk to you soon.

Transcribed by Carrie Cotter | Transcription@cotterville.net

The post Humanitarian Tech | WTR 31 first appeared on Jupiter Broadcasting.

]]>