Reggae on the River 2016 from a Campers Prospective

IMG_9300

I’ve been to many Reggae festivals but nothing like Reggae on the River. I’ve returned as a festival goer this year and this time as a camper. Previous years I was at the festival on behalf of the artists so with all the great vibes that go on behind the stage/scenes, I knew the festival goers experience had to be just as pleasant. Honestly, pleasant if an understatement. Reggae on the River, in its 32nd year of irie vibes, is one to enjoy. And one me and my hubby put on our calendar to prepare for every year. Below is a compilation of our video – it was shot on my Canon 70D, LG G5 and my hubbys iPhone 5. Appearances by my son Nick and my nephew Jeremiah. Enjoy! #reggaelove #reggae #festivals #rotr #humbolt #gerberville #bigfoot #august #roots #culture #irievibes

A Campers Experience – Reggae on the River 2016

Can’t load the video? click here.

 

Tech Talk at GitHub HQ

The event was cool… I walked a good 20 blocks from Bart to get there but once I got in the GitHub HQ doors, I realized my walk was well worth it. I could probably walk another 20 for that experience and what I got from the Dev/Color Tech Talk that night.

We met at about 6:30pm. I was late and arrived at 7:00pm. The bar and began tacos were calling me from a distance. I met my team members at the large picnic tables in the center of GitHub’s lounge. After a glass of wine and a few veggie tacos it was on to the board room (very unconventional by the way). A couple of GitHubs software engineers talked about their experiences working at a tech company. They went in and spoke about being in leadership while being black and minority, the challenges and rewards. 

I enjoyed GitHubs team very much but The real kicker for me was the intro to Hack Programming language and the statistical subjects a couple of our dev color members brought up during their 15 minute lightening talk. I won’t go into the talks but I will tell you they are beneficial and enlightening. 

Overall, my view of start up culture is changing. I’m viewing tech as a race that few are embracing. Even few African Americans. Why is it? Ill dig in another post but keep posted here for more updates on my tech journey.

GirlsCoded Coding Workshop

image

Today was so epic. I got to work with girls ages 10-15 who signed up to the sheCoded ‘Intro to Coding’ workshop. I got to work with girls who were full of curiosity for the future of web and tech, pretty epic day i must admit. These girls kept me laughing and asked so many good questions… One that stood out was “how come in html p tags allow a user to have a single sentence?” Marley asked that one. Funny an brilliant i’ll admit it, i burst out laughing. I thought, “Right!!! Isn’t it called paragraph.” Why don’t they just create a
s tag and sentences will be happy too! I’m just saying. I hope to work with this group again… they left fed and aggressive to build their own apps, games and websites. Always encouraged to be involved in any community event involving schooling our youth. I ended my day back in my tiki here in the East Bay. Do something good and pass the knowledge down to this brilliant generation.

Am I the only one or is anyone else in love with the Nigerian “Finn” aka FN-2187 played by John Boyega?

Finn Gif

Am I the only one or is anyone else in love with “Finn” aka FN-2187 played by John Boyega? Fans are screaming for this young (23 years old) British actor, son of Nigerian immigrants and now the centerpiece in the new Star Wars: The Force Awakens flick.

(The below is reblogged from: NPR)

Nigeria is falling in love with Star Wars.

There are two reasons. There’s a growing nerd culture in the country — young people who love science fiction and see it as a way to imagine our own futures as something better than our present. We also have an annual Comic Con in Lagos. And last year a friend and I started an online “speculative fiction” magazine, Omenana.com, which has helped promote a new generation of sci-fi writers and artists.

The other reason: John Boyega.

Boyega is the son of Nigerians who settled in Britain. He plays Finn, a disillusioned Stormtrooper in the new movie Star Wars: The Force Awakens. And he’s proud of his heritage.

“I’m grounded in who I am and I am a confident black man, a confident, Nigerian, black, chocolate man,” he has posted on Instagram.

Nigerians are already familiar with Boyega. He was in the U.K. sci-fi flick Attack the Block and played Ugwu the houseboy in the film adaptation of Chimamanda Adichie’s novel Half of a Yellow Sun.

 

 

But seeing him in Star Wars has been another kind of experience.

Kemi Williams has been a Star Wars fan since she saw the first film when she was 12. Now she’s 50 — and gratified that there were more relatable characters in the franchise for her children than there were for her.

“It’s significant to me because my son was sitting next to me, and it was a big deal for him to see a character who looks like him,” she said. “When I was little I never had that.”

Growing up in the ’60s and ’70s, Williams felt the only place where she found stories she could relate to were in sci-fi shows like Star Trek and Blake’s 7. The effect was limited, however, because it was “always white people putting these things out.”

Williams was happy that the new Star Wars film has a more diverse cast. She was especially impressed by Boyega’s reaction to racist remarks about his casting.

“What’s important is that he’s out and proud about being a black man,” Williams said. “The fact that he’s Yoruba has a resonance within Nigeria. He’s one of us, and it’s something we can relate to.”

Williams was one of several moviegoers I interviewed in Abuja, Nigeria’s capital.

Boyega’s heritage is of less interest to younger Nigerian fans. Chiagoziem Okoronkwo, 30 and a personal trainer, notes that a number of actors of Nigerian heritage, such asChiwetel Ejiofor, Carmen Ejogo, David Oyelowo and Megalyn Echikunwoke, have risen to prominence in the past few years.

But he’s still excited about the character Boyega plays, which doesn’t fall into familiar Hollywood stereotypes of black people.

“Most black guys get typecast,” he said. “If they’re not the supersmart magical negro, they don’t get cast. [Boyega’s] role was a bit different.”

Ultimately, most moviegoers I spoke to agreed that Boyega’s turn in the movie was most effective as a way to win new fans to the franchise in Nigeria — even if they didn’t realize at first that he was of Nigerian heritage.

“I even thought he was Ghanaian,” admits Pelu Awufeso, a 41-year-old travel journalist and blogger. “Boyega is not an original Yoruba name.”

Awufeso, who had never been interested in the Star Wars franchise before the premiere of the film, went to see the movie only after previous plans fell through. He was won over by the film — and Boyega’s performance.

“I liked the creativity behind it. The sheer creativity in those characters alone deserves kudos,” he said. “I was happy that a Nigerian was considered for the role. To see a young Nigerian lead made me feel that, yes, we are doing well.”

For an older fan like Kemi Williams, the true benefit of Boyega’s casting is that it will bring in a wider audience in Nigeria and show them how science fiction can change the way people think.

“The fact that [Boyega] is a Stormtrooper — who are assumed to be white males underneath their masks — opens up a lot of possibilities,” she said. “It opens up people’s minds.”

Tagged , , , , , , , , , , , , , , , ,

Posting HTML Form to External Link in Safari (Cordova/Phonegap)

cordova
While developing a fairly data centric Hybrid Application using Cordova, I had a need to exclude AJAX from my form post and send my post request as a standard HTML form post. My main reason for choosing this way over ajax was that I was posting files as well as a long base-64 uri to a C# script on my server. I had a simple aspx form on the servers receiving end that needed to capture the post values coming from the client-side app. I chose this route because users of our applications are in rural areas where their signal strength on their devices we’re so strong. Sending images and base-64 data can be a large pay-load not to mention the other 206 fields coming from the app.

In the end, I wanted to mimic a ajax post while using Formdata which kept me from having to manually create the data object. I wanted the form to post to a new window but in Cordova, the UIWebView takes over and replaces Safari web browser with their view. Below is a code snippet found at StackOverflow that did it for me… I modified my version a bit more to define my parameters but for the most-part this same code snippet got my form to post to an external link on our server.

My form was simple (be sure to use ‘_system’ in your target not _blank!):

<form method="post" action="http://myurl.com/postThis" target="_system"></form>

In CDVWebViewDelegate.m search for “shouldstartloadwith” and replace the contents of the BOOL with:

     (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:
     (NSURLRequest*)request navigationType (UIWebViewNavigationType)navigationType{

     if([[NSString stringWithFormat:@"%@",request.URL] 
         rangeOfString:@"file"].location== NSNotFound) { 
            [[UIApplication sharedApplication] openURL:[request URL]]; return NO;
      }
      BOOL shouldLoad = YES;

Clean and build your application in both CLI then in XCode and test. I ran through a lot of examples of how to post from Cordova to an external form but nothing actually worked. Seem’s this way the best fix for my time and effort. The result was simple enough.

Ciao!

 

 

Tagged , , , , ,

“If Your Site is Not Responsive, Neither are You”

Responsive_Web_Design_for_Desktop_Notebook_Tablet_and_Mobile_PhoneTake this post for whatever you may see it fit for but when I say ‘If your site is not responsive, neither are you!’, I really mean it.

As I am writing this post today is December 19, 2015. 6 days away from Christmas and you should already know, me being the shop-a-holic and tech nerdy… I’ve been online shopping like never before. Not only have I beefed up my purchasing over the last 19 days, I’ve navigated to hundreds of sites for information, guidance or commentary relevant to my overall xmas plans, travel and shopping. My blunt and obvious comment is based off of my repetitous experiences with non-responsive sites over the web at this time in the year.

Wouldn’t a merchant who sells products online expect that mobile users may navigate to their site quicker than someone on a desktop? Mostly all of my shooping this year was done online and I can’t tell you how frustrating it is to not be able to use a website that doesnt fit my screen. Between scrolling left to right and tapping on buttons I did’t mean to, I found myself paying more at places like Amazon or Target Online just for a better user experience.

To me, if you are online these days and not mobile responsive or atleast offer a mobile version of your website you are  missing the bigger picture on the web. Being a developer myself, im always looking for ways to drive the web into the future. Ignoring mobile users just to get online is saddening to me. Why would you not care that mobile browsing has become just as popular as desktop use. ‘Get into the future people!’

Any of my readers reading this, make sure if you encounter a website online that is not responsive, contact support at the organization and request they format their site to show up correct on mobile. Explain this would make you want to come to the site more active.

Though this is a nice gesture of kindly throwing it out there, the truth is the site owner most likely doesn’t care if they aren’t in the process. Make it know its needed and don’t use their site altogether.

Tagged , , , ,

Regulating Mobile Platform Fragmentation – Just Say “No” to Government Regulations

Mobile devices and the applications within them help organize our day-to-day lives. Mobile OS/platform fragmentation (mobile devices running different versions of a operating system) is a problem worth worrying about from the top down (top being the user). OS fragmentation is a topic least discussed, and like net neutrality, the issue could be closer to attracting attention from Governments more than ever.

As security becomes more and more pertinent these days, personal security on the mobile spectrum is becoming even more alarming. When OS developers like Google and Apple confirm vulnerabilities, it can be difficult to get users to update their operating systems to reduce exposure to the risks. The fact users are using different forms of the OS makes eliminating the risk challenging and we know where there’s risk in personal security, there is government interest.

Regulating such processes like versioning, in my opinion, is the business of the OS developer who should be listening to the users and their experiences. Like other areas of mobile technology, the government is looking for ways to mandate, which can be a big headache for OS. The fact of a higher power governing the entire process is somewhat scary. In 2013, Department of Homeland Security (DHS) along with the Federal Bureau of Investigation (FBI) published a study listing Android OS as a primary target to threats and vulnerabilities, mentioning the open platform was inconsistent on devices throughout the numerous versions. The main concern listed in the study was the differences in versions amongst a myriad of devices that had their OSes either outdated or unsynchronized against current releases. The study targeted the Android system since the OS is primary amongst many devices unlike their competitor, iOS whose primary devices are their own.

In this day and age, OS developers should be focused on driving mobile into the future, not patching up the past. Government regulations would force these same developers to maintain out of date versions of their OS’s so users of an older version could still use their devices. Yes this sounds like a push towards a good change, and would probably save the user some headache and cash down the road, but in my opinion, policing versioning of at any length would slow down device production and stifle mobile’s still young and innovative future.

At the pace mobile is going, there should be no plan of slowing down. Government interference will pose a sort of unease and take control out of the hands of the creatives by enforcing limitations where there should be flexibility. It would stagnate OS developers from releasing the “next big feature” and create more rhetoric having developers this late in the game scurry to adjust.

Consider a regulation to restrict the amount of versions an OS maker can provide throughout devices. The purpose could be within reason, to slow the various types of platforms available so users can experience consistency in use and security, but the reality is this would create even more issues and allow more loop holes for threats like malware which could become extremely difficult to avoid. Malicious attempts are created with knowledge of the system, if the system was a fixed amongst devices could you imagine what risks a system would be open to?

Carriers would be affected just as much as the OS developer. They would most likely be limited on device hardware they can offer based on capabilities and performance of the OS. They would have to be willing to make adjustments to their connectivity in models depending on which policies are put in place.

I think the big question here is “Is it necessary?” Are OS developers too lenient on how they deal with fragmentation, thus making government interference an overdue possibility? What should we as of mobile engineers and or as a community do to support a resolution to remediate these issues?

The fragmentation issue is bigger than anything the government can predict or even manage. It is something the mobile industry as a whole would need to confront, based off of the needs of the consumers who are purchasing and utilizing the devices every day. It is best the OS developers look for standardized ways to provide consistency in their development and pass along that same consistency to the devices they are used on. A consideration would be to standardize operating systems and include guidelines on customizations device makers would have to consider. Removing the ability to customize their systems, which sets them apart from the competitors is a crucial setback of their product offering and would ultimately affect marketability. OS developers can set stricter criteria on what can be changed, added or removed in their operating systems, constructing a plan around integrated security updates to mitigate consistency in versioning across platforms. This could allow developers a better grasp on how to tackle vulnerabilities in the long run.

Having a governing body enforce policy on something they can and should not try to predict is over kill. It is the job of the platform developers who are providing the operating systems to pay close attention to the consumer and meet the needs, all while pushing mobility into the bright and progressive future. We as application developers should be voicing our opinions, as we are the driving force behind the amazing applications within these ecosystems. I’m excited to hear what you all think of platform governance and the issues with fragmentation on mobile. #ProgressTheWeb #UrbanTechSF

L.E. ‘Akita’ Nichols
twitter: @AkitaUTSF

 

Tagged , , ,

Deciding to Go Native over Hybrid App Development

This is a subject that is somewhat dear to my heart. I was introduced to application development on a fluke. I knew nothing besides the fact that Hybrid Development was the way to go, with frameworks popping up like wild fires, the process had been simplified. 

In fact, my assumptions we true. This form of development was the seam between learning native languages like Objective-C/Swift an Java. I couldn’t wait to dive in an boy did I… My first hybrid application was data intense. I learned Cordova/Phonegap quickly and build an app faster than I could believe. Little that I knew, device capabilities, signal quality, OS and payload would play a key role in my dismay later on.

The app utilized the upload of files as well as synchronous xhttp requests. Something you should always plan for especially if you expect to send large amounts of data. In my case, I was carrying a base64 signature image along with several photos and approximately 200 fields of form data. The server side scripts would process the data then stamp a PDF and email it to a selected recipient.

Most of our users were able to install successfully and use the app with no issue on and offline. The app was developed brilliantly (if I may toot my own horn) however, device capabilities would eventually make my life a living hell. Some users on old devices would complain about app crashes and weird behavior when submitting form data. Something I, an inexperienced app developer at that time had no clue why.

Before I knew it, I was debugging like hell with my QA and trying to narrow down the inconsistent issues. Long story short, it was not long after that I realized my fancy solution had outgrown its intent. The functionality was too intense for older devices and the payload was way to large for the JavaScript manipulated post requests. That was the reason for the inconsistent issues certain users on older devices were having when using the app. I honestly felt bad I didn’t catch the issue before the release but I now chalk it up as experience.

I make the claim to new app developers considering Hybrid development, ask yourself 3 things:

1. Will my app be data heavy?

2. Will I send or receive data to and from my app?

3. What type of devices will my app be used on?

These 3 things are critical. If your app is processing heavy data, sending and receiving data objects and used on specific older devices, Go Native!!! I will stress, if you answered yes to both 2 and 3, save yourself time and headache and choose to develop your app in Objective-C or Swift if targeting iOS or Java if targeting Android devices. 

Looking around the web there are many articles floating around about the beauties of Hybrid development, and I am a big fan, but there are very few resources online that point you toward decisive measures to take to determine if this method will work for the life of your app. Save yourself time an headache by doing your research and probing your clients needs and use cases. Hope this helps someone in the near future.

I did end up rebuilding the same application in native iOS Swift and I must say, the reliability has increased by 5x’s. It’s important to keep in mind that the limitations in HTML5 and JavaScript don’t always play nice with applications, especially when you are sending a large payload of data. This type of functionality is best achieved with a strong and robust native programming language.

Cheers!

AngularJS and Beyond the API

At my current organization we are making use of AngularJS on the client side and using it with .net classes which bind a pretty seamless and robust api pulling in data from sources like MSSQL an PostGres. Because we need gis data in huge payloads, we are making use of the GeoJson PostGres is alloting to use. Our PostGres db is linked an talking to our Esri software which is already data intense being it contains points associated with gis coords and even kml renderings.

In this manner, AngularJS has proven to be as powerful as it can be. Utilizing resources and services with the build, we have erected a pretty strong data layer that is completely seperated from the front-end of our app. Therefore, the client side of the app can live anywhere on the web and utilize simple connection strings in our case housed in our web.config file to connect over a secure connection.

Im excited to see where and what else I can do in AngularJS in terms of big data and resource utilization. Stay tuned for more angular goodness here at my blog.

%d bloggers like this: