Wednesday, December 20, 2017

C++

FINISHED. That was hard but super interesting. Now I want to be a C/C++ programmer. (Also I want to be a computer science college student.)

Thursday, November 16, 2017

Hacker Techniques, Tools, and Incident Handling, 2nd Edition

Read the whole thing. Not exactly fine literature, but, orienting.

Chapter 1 –Hacking: The Next Generation
Chapter 2 – TCP/IP Review
Chapter 3 – Cryptographic Concepts
Chapter 4 – Physical Security
Chapter 5 – Footprinting the Environment
Chapter 6 – Scanning the Environment and Network
Chapter 7 – System Enumeration and System Hacking
Chapter 8 – Wireless Vulnerabilities
Chapter 9 – Web Applications and Cloud Technologies
Chapter 10 – Malware
Chapter 11 – Sniffers, Session Hijacking, and Denial of Service
Chapter 12 – Backtrack R3
Chapter 13 – Social Engineering
Chapter 14 – Incident Response
Chapter 15 – Defensive Technologies

Friday, October 27, 2017

learning C++

"The C programming language's only failing is giving you access to what is really there, and telling you the cold hard raw truth. C gives you the red pill. C pulls the curtain back to show you the wizard. C is truth.
"Why use C then if it's so dangerous? Because C gives you power over the false reality of abstraction and liberates you from stupidity." 
--- Zed Shaw, Intro to Learn C The Hard Way

Thursday, October 19, 2017

What the heck is cybersec

There is a lot of info out there, but it all seems very chaotic, driven by a madly competing marketplace of would-be vendors... Trying to orient myself.

Some stuff they are giving me at school:
  • NetLabs
  • NCL National Cyber League game
  • OWASP Security Shephard
  • Facebook Codepath (incl Capture the Flag)
Stuff out on the free web:

Tuesday, September 5, 2017

Lower Levels

The first thing I realized in my new "cybersec" track: I do not know a thing about computer networking. Always been told not to worry my pretty little head about the dusty stuff under the hood.

Gulped down a quick crash course just trying to get oriented. Lots of cartoons, very helpful.

Friday, August 25, 2017

Sudden Course Change

Aaaand then suddenly, as of today, something new. Or maybe something next.

Today was my first day of classes at my local community college. I enrolled for Web Development, but after some twists and turns, now find myself in... Cybersecurity!

Two year Associate's Degree program, full time formal study.

So, no more FreeCodeCamp for now.


Tuesday, July 11, 2017

Asynchronous pain

Asynchrony Argh
Okay, today's lesson (LearnYouNode #4, "My First Async I/O") hits a tight spot in my brain. But at least now it has a name: asynchronous programming. All this mad business with "callbacks," which everyone seems to munch as easily as so many potato chips. My poor little brain had to unlearn thinking in GOTO statements, for Pete's sake. Now the orderly sequential flow of computer action has gone completely haywire. Like playing 3D Chess. My brain rebels. Plus it smells suspiciously like recursion, which I have yet to befriend.

Okay, okay, I just gotta practice and absorb. Worth chewing on slowly for a while. Sigh.

Gratitude to:
Hey look! Max Ogden actually explains what Node is-- a detail the chaps at FreeCodeCamp didn't think necessary to include before merrily sending me to learn npm and node.js. Why would I want to actually understand what I was learning? Thanks Max!

I will now slow down and back up once again...

Sunday, July 9, 2017

After how-to-npm comes learnyounode, apparently. Or, following FreeCodeCamp, at least the first seven of the thirteen lessons. Finished the first three today.

Command line is kind of fun. And I am slowly learning to manage my anxiety about not knowing what I am doing. So, I might break the computer with a typo. Oh, well! Sail gaily forward!

Friday, July 7, 2017

Another month later

Another month later. Dealing with family stuff. Hopefully this summer will see the last of it. It's been three months, really, since I was really "at" my virtual "camp".

Back to the how-to-npm thing...

Friday, June 9, 2017

Filemaker Pro

Two months later. Where was I? Taking a detour into Filemaker Pro 16.

On April 15, I talked to a friend who was thinking of hiring a freelancer to build a Filemaker solution for her small (~5 people) business. Was flooded by very fond memories of using Filemaker to build a relational database for a small nonprofit ($124K/yr budget) back in 2002. Such a pleasure to analyze a situation and build a solution. Soothing, like untangling knots, building clarity.

The friend eventually decided to take another path, but I had fun designing, and on June 5 I finished a prototype anyway (using a two week free trial of the software).

Wednesday, May 10, 2017

Back to nonsequitor of npm tutorial

If a person has no idea what node.js is and has never used it, then why...? Because you will understand later, honey. Try this cartoon: https://www.npmjs.com/

https://www.freecodecamp.com/challenges/manage-packages-with-npm
  • You can view this Node School module's source code on GitHub at https://github.com/npm/how-to-npm.
  • Complete "Install npm"
  • Complete "Dev Environment"
  • Complete "Login"
  • Complete "Start A Project"
  • Complete "Install A Module"
  • Complete "Listing Dependencies"
  • Complete "npm Test"
  • Complete "Package Niceties"
  • Complete "Publish"
  • Complete "Version"
  • Complete "Publish Again"
  • Complete "Dist Tag"
  • Complete "Dist Tag Removal"
  • Complete "Outdated"
  • Complete "Update"
  • Complete "Rm"
  • Complete "Finale"

Wednesday, May 3, 2017

More affection for GitHub

Okay, just finished the Hello World tutorial on GitHub Guide. That was WAY nicer than previous Git tutorials. Almost a little Filemaker-ish ;)

Should I just continue my little GitHub obsession? (Rather than tackling FreeCodeCamp's next lesson, which is about Node.js...)
To learn more about the power of Pull Requests, we recommend reading the GitHub Flow Guide. You might also visit GitHub Explore and get involved in an Open Source project :octocat:
Tip: Check out our other GuidesYouTube Channel and On-Demand Training for more on how to get started with GitHub.

One month later

Why has it been a month already??? Partly because my family issue is STILL not resolved, ugh. Partly because I've been thinking about attempting a Filemaker Pro gig a friend might be able to offer me. Actually I kind of love Filemaker Pro, and also the Missing Manual book about Filemaker Pro.

I also spent a bit of time on try.github.io . Not super impressed, but somehow I crave these Git tutorials.

Also looked at Glitch, which I heard about on a podcast. Interesting, but still, sadly, over my head. Will I ever get that basic level??

Wednesday, April 12, 2017

Github love attack

Decided to continue with Git today. Started by entering the same "Git-It" tutorial, this time in the updated (desktop) edition. Just wanting to wander around and gain familiarity. Stumbled into this video-- which somehow reduced me to tears. This is what I want. (Or maybe I'm just kinda emotional this week.)



The tutorial suggests I install GitHub Desktop and also the Atom text editor. Okay. I like the vibe of this jlord guy, will try his suggestions... Hey wait jlord is a gal! Yay! And she's made more great guides too! Love.

Monday, April 10, 2017

Distraction: Filemaker Pro

Something a friend posted to Facebook reminded me how much I weirdly really, really loved building a Filemaker Pro relational database back in 2002... Maybe I should ditch FCCamp and devote my life to Filemaker!

http://www.filemaker.com/learning/developer-careers/

FCCamp: Finished "Git-It"

Finished "Git-It" lesson series on how to use GitHub.

That made my inner child feel like a "real" programmer, or at least that I was using a "real" computer-- a command line terminal. Also Git, which every "real" programmer knows how to use automatically, like a keyboard or mouse.

I feel far from automatic and I want to get a better grip on this. It's a mental/emotional roadblock/milestone for me. GitHub. Octocat. Leaping from my childhood programs in BASIC and LOGO to the modern world of complex collaborations. Not being afraid of making edits. Getting it.

FCCamp wants me to do a NPM tutorial next. Which seems a little odd because I don't really even know what Node is yet.

Maybe I will do some more Git tutorials first, just to massage my mental issue.

Aaand btw it's actually eight weeks later, because I had flu for two weeks :(  



Friday, March 24, 2017

Is this my future?

Is this who I will be, three or five years from now?
Software Developer Job for Non-Profit 
compensation: $85,000-$130,000, commensurate with experience
employment type: full-time
non-profit organization 
We are looking for a developer ready to join a fun, dynamic work space, someone who is ready to work in a team and to respond to assessments of data in interesting and productive ways.
This is an onsite full-time position with normal business hours based in Sacramento. We are looking for someone ready to work in agile and test-driven development methodologies, and who is fluent in RoR, Javascript, and CSS.
Ideal candidates will have solid problem-solving skills, will show flexibility in re-designing elements to respond to changes in user-needs.
The position may may include quarterly business trips to our headquarters in New York.
This is a terrific nonprofit doing important work.
Requirements
- 2+ years client-facing Ruby on Rails work
- Test driven development experience
- Agile development methodology experience
- 2+ years client-facing Javascript
- 2+ years client-facing CSS
- located in or willing to locate to the greater Sacramento area
Strongly Desired (but not required)
- Ruby >=1.9.3
- Rails >= 3.0
- Git
- PostgreSQL >= 9.1
- Vim
- Javascript
- REACT
- Bootstrap
- RESTful APIs
- RSpec
- HTML 5
- CSS/Sass
- JQuery
- Resque
- Redis
- Jasmine
- Elastic Search
- Experience buiding apps that are Accessible and Responsive
- Test Driven Development
- 3+ years experience
- 2+ years of Agile experience
- Has worked for clients (not just a product with no external stakeholders)
- Has worked on an app or web service with 3,000+ users
Benefits
- Full health coverage with medical, dental, & vision
- 401(k) plan
- FSA
- Company Educational Contribution
- Flexible Vacation Plan
Compensation is commensurate with experience.
We are excited to receive applications from all qualified candidates, including developers of any gender or sexual preference, ethnic or religious background, or level of seen or unseen disability.
Interested candidates may send a cover letter, resume, and GitHub handle (optional) to "Software Developer Job Applicant [your name]" (please use the email above.) Please also include 2-3 Professional References.
Principals only, please! We have no need for recruiters at this time.
Principals only. Recruiters, please don't contact this job poster.
do NOT contact us with unsolicited services or offers
OK to highlight this job opening for persons with disabilities

Aaaand then it's six weeks later.

What did I do during those six weeks? Gave myself enough legal training to be able complete a DIY divorce packet and hand it over to "the client."

Also, about 5 hours on Codecademy React.JS lessons. But those felt very decontextualized and arbitrary. After a four-week break, took another look at the FCCamp curriculum and decided it would make more sense to me to try tackling their "Back End" certificate next rather than the "Data Viz" certificate. Especially since their "Data Viz" is all kind beta/unpublished/skeletal anyway.

I feel disconnected and rusty :(

Wednesday, February 8, 2017

Finished: Free Code Camp - Front End Development Certificate!

Now that is a milestone.


Current FCCamp stats and info from their website:

Total FCC Certificates Earned by Campers
Front End: 3,314
Data Viz: 375
Back End: 243
All three: 132
(Doesn't say how many "campers" have begun since it was started in Oct 2014, only how many have gotten this far. Or current usage level: 350,000 unique visitors per month.)
"How long does freeCodeCamp take? It takes about 2,080 hours [1200 coursework + 800 internship] to complete our Full Stack Developer certificate. This translates into one year of full-time coding. We’re completely self-paced though, so take as long as you need."
I started FFCamp on May 8, 2015. Finished the first certificate on Feb 8, 2017.
21 months.

Their time estimate back then (when the curric was shorter. No Data Viz, I think.)
"It takes about 1,600 hours of coding [800 coursework + 800 internship] to develop the skills you'll need to get an entry level software engineering job. Most coding bootcamps try to jam all this into 3 or 4 months of intensive study. Here are some example coding schedules:
Time budgeted --- Hours per week --- Weeks to complete
Weekends --- 10 hours/week --- 160 weeks (36 months)
Nights and Weekends --- 20 hours/week --- 80 weeks (18 months)
Full time --- 40 hours/week --- 40 weeks (9 months)
Traditional Bootcamp Pacing --- 80 hours/week --- 20 weeks (5 months)"
So... If I call myself a "weekends" student, maybe I still have 15 months to "catch up with my class" and graduate on time??

Wednesday, February 1, 2017

A Google curriculum

"The guide lists topics and resources in a rough progression, from possible places to begin if you have little or no technical skills, to resources for those with increasing skills, to ways to gain exposure in the Computer Sciences field."

https://www.google.com/about/careers/students/guide-to-technical-development.html

Wednesday, January 25, 2017

Completed: "Build a Simon Game."

Finished the Free Code Camp build a Simon game assignment.

Ten hours of work, spread over seven weeks. (Seven weeks??? Ugh. I had the flu twice.)

The only assignment left in the certificate: the "No Repeats Please" task that I abandoned in September.

Friday, January 20, 2017

another job description

Yesterday my congregation president talked about finding a way to hire me. Today my regional office sent out this new job description. I'm taking it as a good omen.



Dear Congregational Leaders,

"We're not sure what we're supposed to be doing on Facebook, but we know we're supposed to be there. How are others handling social media?"

"We're struggling to get people our information even though we seem to be distributing it in more ways than ever before. What do we do?"

"We want to add live video streaming to our services. What do we need to know from a technology standpoint to make it work?"

These are all questions that staff throughout the Region have gotten before. From large congregations looking at developing their own mobile apps to small congregations looking to livestream for their house-bound members, everyone is considering ways in which technology and communications are impacting the way their congregation functions. And for many of our congregations it's not an area of strength or confidence, and so many have simply let it go or have asked for more support.

We're responding to that request for more help by offering specific support to congregations who want to do more with technology. A recent addition to our staff will be taking the lead on congregational support related to technology or communications.

Some will know her as the developer of the new WordPress theme for our websites, which is being used by more than a hundred congregations across the continent. She's also developed data management systems in congregations, built crowdfunding donation systems and led several congregations through branding and communications exercises. She has spent the last fifteen years working with nonprofits and community organizations on technology implementation and campaign communications, and so brings both a deep knowledge of technology and a close engagement with our communities.

We want our congregations to have an informed look at technology as resources get tighter or needs increase, to see how it can help the congregation's operations run more efficiently. We want to look at the ways in which communications technology can help us spread our message and invite people into our communities. And we want to be intentional about engaging new trends in technology that newcomers demand without leaving our existing folks behind.

When should you contact her? If you're working on an issue or situation in congregational life that involves technology, reach out. This might include streamlining information management, building communications plans, or evaluating Requests for Proposals you've gotten for a new branding project. It might have to do with how you want to handle social media, developing a better eNewsletter or leading an evaluation of your website. The best way to reach her is via email but you can also find her on Facebook and Twitter if those are your preference.

Thursday, January 19, 2017

finished: Learn to Program by Chris Pine



Why are all the friendly newcomer things always in Ruby?