Wargames

Wargames and capture the flag challenges are a fantastic way to pick up skills on a whole raft of areas not just security related as they will sharpen thinking and skills like command line skills. There are a few different resources that can be used at different levels for example overthewire wargames here –

http://overthewire.org/wargames/

are a fantastic source of learning and have multiple levels.

There is a link below to more challenges

http://kennedyinfosec.com/blog/?p=419

these should provide an enormous learning resource for anybody interested in learning security.

Web App Penetration Testing

Due to the expanding field of web development and web design there is also a huge demand for learning about the security of web apps and how to break them using penetration testing methods. Learning these skills can be difficult but there are some good resources out there including

OWASP Broken web app project

https://www.owasp.org/index.php/OWASP_Broken_Web_Applications_Project

this gives a virtual machine full of exploitable web apps and the machine itself can be gotten here

http://sourceforge.net/projects/owaspbwa/files/

Also well worth checking out is Damn Vulnerable Web App 

http://www.dvwa.co.uk

and the code is here

https://github.com/RandomStorm/DVWA

There are also other challenge based environments that are available but these 2 are more than enough to get started on.

Penetration Testing

Wikipedia defines penetration testing as  an attack on a computer system with the intention of finding security weaknesses, potentially gaining access to it, its functionality and data. A lot of companies pay quite substantial amounts of money for this service and it can be very rewarding both from a technical and financial point of view to learn and make a career in. 

Pentester Labs provide a free course for web application penetration testing here

https://pentesterlab.com/

another excellent link is

http://exploit-exercises.com

Also it is very helpful to understand some of the methodologies involved such as this one

http://www.isecom.org/research/osstmm.html

These are only a couple of links and there are other skills that are needed such as understanding networks and writing exploits.

Drivedroid

Drivedroid is a free app available in the play store here

https://play.google.com/store/apps/details?id=com.softwarebakery.drivedroid

It is an immensely useful app to have as it can be used to create and store iso disk images which means that you can use your android phone to boot your pc. The link below has some great information on creating iso images even from existing windows installations

http://softwarebakery.com/projects/drivedroid

Kivy

Kivy is a python based framework that is both open source and can be run on multiple platforms including Android. This means that developing Android apps in Python is now much easier. Here is the official site

http://kivy.org/#home

There are not that any in the way of tutorials but here are a couple to get started

http://archlinux.me/dusty/2013/06/13/creating-an-application-in-kivy-part-1/

http://inclem.net/2014/01/09/kivy-crash-course/1_making-a-simple-app/

http://kivyspacegame.wordpress.com

http://wiki.gestureworks.com/index.php/GestureWorksCore:Python_%26_Kivy_-_Getting_Started_I_(Hello_World)

 

Kanban Development

Kanban is a scheduling system which is used in lean and just-in-time (JIT) manufacturing mainly. Its main benefit was that is was very useful in controlling in-process inventory. It has started to become popular in software development circles. Here are some interesting links

http://refcardz.dzone.com/refcardz/getting-started-kanban

http://www.scrumhub.com/kanban-fundamentals

http://hackeratwork.com/hacker/kanban-an-easy-tutorial/

The link below is of somebody who is skeptical of using kanban and scrum together

http://scrumcrazy.wordpress.com/2013/02/04/kanban-vs-scrum-kanban-is-not-for-software-development-but-scrum-is/

A lot of people disagree, here are some more links hopefully some will prove useful

http://en.wikipedia.org/wiki/Kanban_(development)

https://help.rallydev.com/agile-video-tutorials

http://www.javacodegeeks.com/2013/05/kanban-is-the-new-scrum.html

http://kanbanblog.com/explained/

http://lostechies.com/derickbailey/2008/11/19/adventures-in-lean/

http://lostechies.com/derickbailey/2009/08/05/how-to-get-started-with-kanban-in-software-development/

 

JavaFX

To quote wikipedia

JavaFX is a software platform for creating and delivering rich internet applications (RIAs) that can run across a wide variety of devices. JavaFX is intended to replace Swing as the standard GUI library for Java SE

There are some good tutorials out there for getting started

The official Oracle documentation is always a good place to start

http://docs.oracle.com/javase/8/javase-clienttechnologies.htm

http://javatutorialhq.com/javafx/

The Netbeans Trails have some good resources too

https://netbeans.org/kb/trails/matisse.html

http://www.dreamincode.net/forums/topic/306750-getting-started-with-javafx-2/

http://www.javafxapps.in/tutorials.php

Here is a great site teaching how to develop a game using JavaFx

https://carlfx.wordpress.com

 

Also for Eclipse users here are instructions on how to install the scene builder plugin for eclipse

http://docs.oracle.com/javafx/scenebuilder/1/use_java_ides/sb-with-eclipse.htm#BABBFEBD