A musical adventure through progressive house, deep house, dance and indie dance.
A musical adventure through progressive house, deep house, dance and indie dance.
If you haven’t heard about latest news and debate surrounding Facebook’s Messenger app, I would honestly be surprised. In a brief rundown, many news agencies are giving Facebook Messenger a really, really bad rap, and in my opinion, it’s extremely unfair.
Some of the claims news agencies are making
These claims are indeed partially true – (the required permissions at least)
I’m an iOS developer, and have been for many years. Within the iOS platform, apps are contained within their own sandbox, and cannot communicate with other apps (except apps owned by the same organisation, although this is still limited). More importantly, when requiring special permissions, such as camera access and contact access, they are required to show a dialogue to the user. This is the flow of iOS.
Facebook does in fact require access to your front and back camera. This isn’t to spy on you. This is to take photos for you to send to your friends via messenger. The facebook app cannot invoke the camera without the app being in the foreground (due to the nature of the sandbox and lockdownd/fairplayd (i’m pretty sure they’re the two daemons who control this) .
Facebook also requires access to your contacts. It uses this info to match them to your friends for contact synchronisation so you can get their profile pictures on your phone. Additionally this also lets you message non-facebook friends (Something new facebook is trying to make catch on like iMessage did on iOS only)
However, Facebook CANNOT under any circumstance access your phone calls or SMS messages on iOS. The iOS sandbox disallows this completely. These are no API’s for this at all.
You’re probably a little less safe on android – Facebook requires the same permissions, but also gets access to your text messages. Nothing to worry about though – Facebook doesn’t read your messages. It only checks your messages for a confirmation message it sends to confirm your phone number. There seriously is nothing here to be worried about.
The other two permissions such as camera access and contacts are also used for the above reasons, however I am not 100% sure on the android sandbox and cannot confirm whether or not they can run the camera in the background (highly unlikely they would anyway – why they hell would they want to spy on you).
Long story short, it’s some of these claims are absolutely ridiculous. More importantly, the above permissions that are required for Messenger, were part of the permissions the original Facebook app required anyway, so it’s rather a ridiculous argument for people to have.
It’s been a while since my last quadcopter post – mainly because i’ve been in the UK and didn’t take it with me.
The day that I left for the UK, the new frame that I ordered for the quad arrived. Every time I upgrade to a new frame, the quad seems to shrink in size.
This new frame has quite a small wingspan, resulting in a downsize in propellors to a smaller 5″ diameter. It does however have a much lower weight footprint. Weighing in at only 58g, it’s 20g lighter than the old frame and has much more room for cable management and a nice place underneath (which I’ve modified) to hold the battery safely during flight.
Overall, I’m pretty happy with the new frame, however do hope it will be wide enough to still be able to freely manoeuvre the quad.
Due to the large response to the initial release of PlaylistGrabber, I have quickly revised some of the UI and functionality to bring it up to scratch with user expectations.
I’m pretty happy with what I have achieved over the few hours I’ve worked on this project. And after all, I’ve learnt how to program for Mac OSX.
I am currently a student, studying Computer Science at the University of New South Wales, Australia. If you like this app, please consider donating – The more donations, the more incentive for me to bring new features.
You can download release 1.1 build 110 here:
Spotify was great. I had my music everywhere, could add new music without a computer, however it lacked in a major area – Playlists. It seems to be a growing trend of music players to suck at this. Being unable to shuffle all music on the device is also a massive drawback. I will be cancelling my Spotify subscription once my 3 month trial is over.
Let me introduce PlaylistGrabber for OSX. This is my first Cocoa application, targeted at 10.8 and upwards (not tested much). PlaylistGrabber reads your iTunes library XML file, and allows you to choose playlists to export. It creates a folder structure that you can drag and drop onto your device (or export directly to the device if you have mass storage capabilities). It exports playlists in M3U format and understands that the duplicate songs in different playlists are the SAME song – so no stupid duplicates in your library, just as iTunes handles it.
Due to the nature and simplicity of M3U playlists, most music players understand these, including PowerApp, Samsung Music App and Google Play Music. This is good news, as now you are free to roam to other solutions than DoubleTwist for all your iTunes Syncing needs.
Eventually I will tidy up the application, however at this present time, I do not have enough time to do so. Eventually I would like to make the app do the following:
If you want to download this and try it out, feel free to: PlaylistGrabber. If you come across any bugs or have any suggestions, let me know, it’ll be nice to track them in the future for new releases in summer this year.
My last 3 weeks has mostly consisted of programming for a Flask Web Environment.
What is flask? Flask is a fancy python library allowing rapid web application, api, and interface development. It tackles many of the hard parts of programming web apps in nice and easy paradigms.
Flask has many extensions available, two being Flask-SQLAlchemy and Flask-Security. These two are must haves for any kind of application development involving a database and a level of security management.
Back in my PHP days, I would slave away and create a fancy PHP permissions structure for whatever web application I was writing. Horrible. Probably filled with vulnerabilities & all sorts of bad things. Flask-Security is made so you don’t need to do this.
How about SQLAlchemy? SQLAlchemy is a database interface wrapper, but it’s more than just a wrapper. It does ORM, which means you can represent your database entities as objects/classes. A very similar paradigm to both CoreData on iOS AND my own, NWRestful/NWManagedObjects framework.
As this isn’t a tutorial, I won’t go through it, however there are some AMAZING examples hosted on the Flask website and the Flask-SQLAlchemy website. I cannot say the same for Flask-Security however.
Over my first project, programming for Flask/Flask-security, I found the security library’s documentation to be greatly lacking. This was a slight drawback, however once I got my head around the library, everything went nicely.
I will aim to upload a Flask example package/boilerplate with the structure of how I use flask within the next few weeks.
So far i’ve almost completed all the electronics components of the quadcopter. I am now waiting for my 5v regulator to arrive. I will use this to drive the Raspberry Pi from the 7.2 Lipoly battery. Once this arrives the quad will be able to become fully wireless (currently 5v power inlet is requiring a cable).
I wrote a basic program to control the PWM speeds from the RPi. This is letting me test the power that the quad has. At the moment it can easily lift off at about 40/100 (however I’m not sure if this is linear).
This video shows me bringing the controller speed up to 30/100:
The next challenge is going to be mounting everything in such a way that it’s accessible and still lightweight. At the moment electrical tape is a great mounting tool.
I just ordered a cheap $30 56g lightweight frame off ebay, however, I need something in the mean time to get set up with. Instead of using the ugly and heavy (~250g) wooden frame, I have built this frame from some spare materials I found in the garage.
Next up, I will need to make all the electronic connections and determine where to house the RPi and battery on the quad. I am going to have to now be careful about positioning of the electronics as the entire frame is conductive :S
Here are a couple of picture of the new frame’s construction