Thursday, December 4, 2014

Add Color to a Black and White Photo

Wednesday, December 3, 2014

Google Certified Educator

Its 2:00am and I just completed my Google Educator Certification.  I have been running Google Apps for Education in my School for the last 5 years and have used Google products like Gmail, Calendar, and Apps since their BETA days so it was not the most difficult cert I have ever attempted but it did present some challenges.  

What I love about Google is that they pretty much standardized the user experience through all their products so even if you have not personally used a product such as "Sites" you can still navigate through it based on experience with Gmail or Drive.  

The certification requires some time even for a strong Google user.  There are a lot of things that you probably do or have done that you don't have stored in your permanent memory banks.  I recommend taking the time to read through the lessons and watch the videos provided by the training courses.  It also helps to have a dual screen monitor so you can have the applications up as you are taking the exam.  This was extremely beneficial for me as I could navigate the system and find the answers most of the time.  you will also need some uninterrupted time since you only have 90 minutes to complete each of the 5 tests at 60 questions each.  I am a glutton for punishment so I just blocked out about 6 hours and pushed through.  After some eye strain and a slight migraine, I am certified.  

Even though this is by no means on par with CISCO, OSCP, Apple, or Microsoft Certs, it is still worth your time.  The business and education realms are constantly integrating Google-Based service into their organizations and the fact that you can demonstrate the skills necessary to work in that environment can only benefit you in the long run. 

Feel free to leave comments and I will answer any question about the exam and prep-time, but I will not give any questions or answers away.


Saturday, November 8, 2014

Technology Integration in K-12 Instruction

            A cloud of axioms surrounds the gamut of modern K-12 instruction with the focus on technology and integration of technologies into education.  Buzz words like “One to One”, “BYOD” and “Student Centric Learning” permeate the fabric of educational institutions and governances, prompting the need for expanded pedagogical knowledge on the part of teachers and school administrators in order to better facilitate a growing technological culture (Donovan, Green, Hansen, 2011; Leer, Ivanov, 2013).  This technology explosion, while providing expansive benefits and opportunities, is not without its barriers, dangers, and even difficulties.  Often, because of the enormous push to facilitate new and emerging technologies, educators are left with a high level of apprehension due to the lack of professional development, technical support, and initial cognizant knowledge of these new devices or applications (Pritchett, Pritchett, Wohleb, 2013). Gordon Moore predicted in 1965 that the speed and power of the computer chip and construction of knowledge would eventually double every two years.  Moore was hauntingly accurate as the current knowledge-doubling curve is expected to be around every eighteen months and growing exponentially. (Aronson, 2009; Leer, Ivanov, 2013).  This rapid growth requires educators at all levels to not only adopt technology and new styles of teaching and learning, but also to evaluate the best methods and resources for their students and faculty.  When espousing such programs it must not be assumed that there is a one-size-fits-all approach to integration, but rather each institution must evaluate their own technology needs on a case-by-case basis (Donovan et al., 2011).  This is first accomplished by analyzing the barriers and dangers of technology followed by making calculated preparations and planning initiatives, and finally developing a scope and level of technology proliferation within the institution.
Barriers and Dangers
            Students in the 21st century are native to technology. They have been exposed to social media, complex games, and advanced technologies to a degree unlike any generation before (Prensky, 2010; Ives, 20012 ).  Modern day adults may use technology to a high degree, but they see it from a different standpoint.  For many adults it is a tool but since they have life experiences without technology its application is secondary, and more often than not being introduced after their primary education.  For students, it is a lifeline that dramatically affects all aspects of their social and personal lives because they have never known a life without it (Tettegah, Hunter, 2006).  The vast difference in perceived technological influence among this generational gap engenders a barrier in regards to its implementation since adults function more as “digital immigrants” and require a level of understanding and training that their “digital native” students do not (Pritchett et all, 2013; Ives, 2012).  Understanding this barrier and making proactive steps to overcome it is a critical step in modern education. 
With the creation of the Internet and subsequently the dominance of social media in the early 2000s, a new and growing problem exists among students in the form of cyber bullying and other cyber dangers.  These forms of abuse are not entirely a new, but rather existing ones augmented with modern technology.  Students internalize their virtual world and formulate an identity based on their online presence.  Therefor children are often impacted in ways that are not necessarily clear to people who care for them such as teachers and parents (Tettegah, Hunter, 2006; McQuade, Colt, Meyer, 2009).   Cyber bullying should be of high concern when developing a technology initiative thus requiring parents and school employees to partner in teaching Internet safety and digital citizenship.  Although student have abundant familiarity with social media, devices, and web 2.0 they don’t adherently understand privacy and safety concerns on a long term or even global scope (Ives, 2012).  Mike Ribble (2011) created a four stage reflective model consisting of awareness of technology, guided activities, modeling and demonstration, and feedback and analysis.  Educators that utilize this model can aid students in developing habits in regard to digital citizenship without stifling natural inquisition and discovery.  Teachers who are typically digital immigrants are not necessarily equipped overcome these barriers within the classroom and should therefor be provided professional development in regards to technology, applications, and web 2.0 utilization (Pritchett et all, 2013, p.30).
21st Century Learning: Preparations and Planning
The integration of modern tools can make a dramatic impact on instruction and student responsiveness to learning and engagement.  However, adopting the “best” technologies or newest applications does not guarantee that teachers or students will utilize that technology effectively or that it will bring any perceived return on investment for the district (Potter, Rockinson-Szapkiw, 2012). Since possessing technology in a class does not, in itself, provide a more effective learning environment, David Jonassen proposes that technology and computers are “cognitive tools” through which learners must be self-regulated, and that this learning process has to be organized by a high degree of planning and decision making processes (Jonassen, 1995).  Frequently, because of the perceived drive for school systems to rapidly integrate technology into their structure and curriculum, a greater focus is put on acquiring the technology rather than making sure it is used effectively through professional development and other trainings.  This inadvertently creates feelings of anxiety and frustration for teachers who have the “tools”, but not the ability to facilitate a cognitive learning environment with those tools (Pritchett et al, 2013).  It is for this reason that developing a robust and sustainable professional development plan is essential for educational institutions planning on integrating a 21st century learning environment (Potter, Rockinson-Szapkiw, 2012).
Professional development obviously involves teaching and demonstrating the functional capacity of the specific technologies being utilized within a school system.  However, while providing technical instruction is critical for effective use, it is much more important that these trainings provide new perspectives and ideas on how to teach in the 21st century.  Educators internalize their role as mentor, teacher, and lecturer, thus building an identity around what they know as traditional education (Sappey, Relf, 2010).  Good professional development stimulates the identity of the teacher, but also provides them with new ways of fulfilling that role in the process of incorporating technology that may not always comply with traditional styles of teaching.  Marc Prensky proposes in his book, Teaching Digital Natives that we must adjust the way we teach, because of technology.  Students want to learn differently, because they also think differently than generations of learners that have come before them (Prensky, 2010). Their exposure to technology at a young age and the rapid accessibility they have to information requires a shift in the way educators relay knowledge.  Prensky proposes that this shift involves a form of partnering between students and teachers, where the focus is directed towards the parts of learning they each do best.  This partnering style of teaching is typically centered on a project-based or student-driven approach where students have more autonomy in their instruction, instead of the traditional lecture method (Prensky, 2010).  For example, through the application and use of various technologies, teachers could facilitate a collaborative and interactive learning environment, where students take a primary role in the learning process by finding their passions and presenting information in their own form of unique expression.  Though Prensky’s ideas are not the definitive guide to technology integration, they do drive home the fact that, when incorporating modern technologies, teachers need to re-think the mode in which students are educated.  Administrative staff should take proactive steps, through professional development, to prepare their educators to use such technological tools, before any device or program is to be initiated within a district.
Scope and Level of Proliferation
            Globally, device per person ratios are expanding at an astounding rate.  Cisco, one of the more dominant networking companies in the world developed a network index forecast for devices and data usage from 2013 – 2018.  Their analysis was astounding.  In 2013 there were 21.7 million wearable devices and they projected that by 2018 that number would increase to 176.9 million.  They also expect that the world will see over 10 billion mobile devices worldwide which is an increase of 3 billion since 2013 (Cisco, 2014).  These estimates represent a number 1.4 times greater than the worlds human population.  Whether we like it or not technology is proliferating our lives and changing traditional methodologies and thinking.  In spite of this growth in accessible devices, educators should also understand that not everyone necessarily has access to the same devices as others.  In a highly tech-driven school system some students may be disenfranchised because of their inability to access the same modern tools as other students.  This affects students as well as parents who may not have the same access to parent portals and web-based communications as others and there for should be a concern for districts interested in heavily promoting emerging tech initiatives (Ribble, 2011).
            Even though all technologies are not available to all people at all times regardless of a communities socioeconomic status, the education system should adhere to, and expect a minimum standard. This may be as simple as expecting all students to have a personal computer or access to one.  Educators should actively seek out technology resources within their district and advocate for the implementation of tools that don’t currently exist  (Prensky, 2010, p.99).  A growing trend many districts are adopting to curb the disadvantages of those who do not have access to personal technology, is the implementation of a one to one program.  Traditionally this takes the form of a standardized devices being distributed to all students.  Such a methodology albeit expensive, provides consistent access to computers for their students, thus completely revolutionizing instruction and school dynamics and potentially providing more evenhanded access to resources.   This ultimately stimulates enhanced learning opportunities that could eventually afford a positive increase in academic performance (Schrum, 2011).  
            Considering the fact that every institution must evaluate the resources that work best for their teachers and students it is evident that all technology programs are not the same or equal.  It is important when evaluating the scope of technology implementation that school employees and community evaluate the districts technology plan in order to determine the most effective use and integration and encourage methodologies that encourage a genuine and concerted effort to apply such tools within the curriculum and provide teachers with the understanding to efficiently and confidently utilize those tools  (Donovan et all, 2011, p.134,123; Pritchett, 2013).
            Technology initiatives are becoming common practice with school systems and while there may be new challenges, it also seems that the potential benefit of such programs can be prodigious if implemented in a planned and thoughtful way.  When considering barriers, preparations and planning, and the implementation of technology there is an overwhelming theme of providing an environment of quality professional development before and while utilizing technology in the classroom.  The world’s technological resources are growing daily and while schools should make efforts to implement such technologies there should be careful evaluation of what resources best suit the needs of the students and community the school system serves. 


(2014, April 4). Cisco Visual Networking Index Forecast Projects Nearly 11-Fold Increase in Global Mobile Data      
        Traffic from 2013 to 2018. Web Newswire (India).

Aronson, M. (2009). Moore of Everything. School Library Journal, 55(6), 26.

Donovan, L., Green, T., & Hansen, L. E. (2011). One-to-One Laptop Teacher Education: Does Involvement Affect 
         Candidate Technology Skills and Dispositions?. Journal Of Research On Technology In Education   
         (International Society For Technology In Education), 44(2), 121-139.

Ives, E. A. (2012, October 1). iGeneration: The Social Cognitive Effects of Digital Technology on Teenagers. 
         Online Submission,.

Jonassen, D. H. (1995). Computers as cognitive tools: Learning with technology, not from technology. Journal of 
        Computing in Higher Education, 6(2), 40-73.

         Organizational Innovation, 5(4), 14-20.

McQuade, S. C., Colt, J. P., & Meyer, N. B. (2009). Cyber Bullying : Protecting Kids and Adults From Online 
        Bullies. Westport, Conn: Praeger Publishers.

Potter, S. L., & Rockinson-Szapkiw, A. J. (2012). Technology integration for instructional improvement: The 
        impact of professional development. Performance Improvement, 51(2), 22-27. doi:10.1002/pfi.21246

Prensky, M. (2010). Teaching digital natives: partnering for real learning. Corwin Press.

Pritchett, C., Pritchett, C., & Wohleb, E. (2013). Usage, Barriers, and Training of Web 2.0 Technology 
        Applications. SRATE Journal, 22(2), 29-38. Retrieved October 7, 2014, from 

Ribble, M. (2011). Digital Citizenship in Schools. Eugene, Or: International Society for Technology in Education.

Sappey, J., & Relf, S. (2010). Digital Technology Education and Its Impact on Traditional Academic Roles and 
       Practice. Journal Of University Teaching And Learning Practice, 7(1).

Schrum, L. (2011). Considerations on Educational Technology Integration : The Best of JRTE. Eugene, Or: 
       International Society for Technology in Education.

Tettegah, S. Y., & Hunter, R. C. (2006). Technology and Education : Issues in Administration, Policy, and 
       Applications in K12 Schools. Amsterdam: Elsevier JAI.

Monday, August 4, 2014

KeoFlex PHP Tutorial 13/13 - Final Solution

Try this yourself before watching the video

In this challenge we need to make a program for a task list. This list should be an array of 3 task locations including

At Home, At Store, and At Work

Each on of these should have a value that is an array of several items. This will require a nested foreach loop. This will be difficult but try your best before watching the solution video. This array will be a "Multidimensional Associative Array".

When looping through the Task locations echo them as an HTML h1

Your result should look like:

At Home


At Store


At Work

change computer password
copy folder 1

KeoFlex PHP Tutorial 12/13 - Sorting Arrayts

KeoFlex PHP Tutorial 11/13 - PHP arrays

KeoFlex PHP Tutorial 10/13 - PHP Loops 2

KeoFlex PHP Tutorial 9/13 - PHP Loops

KeoFlex PHP Tutorial 8/13 - PHP if statements

KeoFlex PHP Tutorial 7/13 - Challenge


We have a come a long way and covered a lot of material. On your own try to create a program that does the following.

Create 4 variables three of which are numeric and 1 which is text
The text variable will be your name
The first number variable will be your year of birth
the second number variable will be the current year.
Use PHP math to find out how old your are based on your year of birth and the current year. Set this as the value for the third numeric veritable.

Finally wrap things up by displaying an output on screen that says "My name is XXXXX and I am YYYYY years old. Replacing the XXXXX with your name and YYYYY with how old you are.

KeoFlex PHP Tutorial 6/13 - PHP Variables part 2

KeoFlex PHP Tutorial 5/13 - PHP variables

KeoFlex PHP Tutorial 4/13 - PHP Syntax

KeoFlex PHP Tutorial 3/13 -local web server

KeoFlex PHP Tutorial 1/13 -intro

Friday, May 23, 2014

IOS App development

I just released my first two apps on the Apple App Store.  I decided I would build one from scratch and the other do a re-skin of a popular app.

The first one I built from scratch was "Flappin Dragon".  This is essentially a "Flappy Birds" Clone.  To be honest the basic design of this game was not near as difficult as I anticipated (Look for my full video walk-through later).  I did however learn a few lessons with this one:
  1. ALWAYS import external frameworks into your project.  
  2. Do test and when done testing test a few more times.
  3. Sometimes you have to contact iAd Apple support to get your Ads running.
My first mistake was to download my "Ad frameworks" and just link them to my project.  However if you ever move or even make certain changes to the project you get a Match-O-Link error.  This literally took me hours to figure out.  My project would work great and then suddenly I was getting tons of warnings and errors.  For a good tutorial see my last post on adding Ad services to your iOS projects.

Second, it seems the more I play the game the more little glitches I found.  After my app was approved I immediately submitted an update to fix those glitches, then found more glitches and repeated this process about 6 times.  So a good rule of thumb is "Don't release your app until its READY".  I'm not actually the most patient person in the world so as a result forced my users to go through several updates just to get program the way I intended it.  Don't do that LOL.

I went literally weeks with no iAds showing up on my app.  My wife kept telling me to contact iAd support and see what was up but I thought it was just part of the process.  Well eventually I was fed up with it and wrote Apple.  They responded almost immediately (within 24 hours) and told me they would look into the issue.  BTW I send them screenshots of the app and code which I feel may have expedited the process.  Within a day or two my game was running beautiful ads and I was making money.  Apple has great support so don't be afraid to take advantage of it!

Check out both my apps on the App Store with the links below or by searching "Keoflex"

Also don't forget to check out my facebook page at

Thursday, April 3, 2014

Raspberry Pi (You need one!)

I recently attended a conference on a product called Raspberry Pi.  This amazing little gadget is simply amazing.  So what is a Raspberry Pi?  Essentially it is a complete computer system that fits in the palm of your hand.  It supports the following components directly on the device:
  1. HDMI out
  2. Composite  video out
  3. Audio out
  4. 2 X USB
  5. 1 X Micro USB (for power)
  6. SD Card reader (Used as the hard drive)
After getting your Pi you will also want to pick up a 16+GB SD card so you can run NOOBs This is a set of Linux based operating systems that essentially make it possible to do almost anything with your Pi.  For instance you can install XMC (XBox Media Center -not to be confused with Microsofts XBox game console) and run a movie and MP3 streaming service inside your house.  I also have a friend that took his Raspberry Pi and is automating his home.  The possibilities are endless.  You can pick up a pie from  Also check out my initial instruction video on how to configure your Pi out of Box.

Tuesday, April 1, 2014

"Bing Bot" Made with AutoIT

So it seems Bing in their desperate attempt to take on the Google Goliath is now bribing people to use their search service.  To be honest I have used Bing for the past 6 months and am less than impressed!  In fact the only reason I actually go to Bing is to bet my daily bribe of 15 searching, so I can continue to rack up Bing rewards points. With that said some of you might find it interesting to know there are several "Bing Bots" out there that essentially run searches for you.  While I can't condone or approve of their usage considering it is a bit of a digital gray line (Unless you read Microsofts EULA, but who reads those anyway LOL).  I for one wanted to see if it was possible.  So I downloaded my old friend (AutoIT) and wrote a loop and cycles through your browser searching Bing 30 times.  I have included the link below (USE FOR EDUCATIONAL USE ONLY).

You must have Google Chrome installed, and you must set new tabs to load Bing.  When the application runs it loads Chrome runs a random search phrase out of a series of 3 arrays and then closes the tab and searches again.  Have fun!

I can attest that the files are safe but I make no guarantee and you should download at your own risk.
Click here to go to and download my script (download 7zip to extract archive)