HNHacker News
TopNewBestAskShowJobs

techjuice

344 karma · joined January 13, 2014

submissionscomments
techjuice··on Ask HN: What is a good book to learn about the network stack?
I recommend reading the following books/presentations, I have read all of them several times and it has given me a very lucrative, wonderful deep understanding of TCP/IP (including UDP), programming network connected applications, creating complex network diagrams, and being able to perfectly talk with all individuals in networking from the non-technical to telco engineers, work as an embedded engineer, network engineer and more.

  TCP/IP Illustrated Volume 1: The Protocols

  TCP/IP Illustrated Volume 2: The Implementation

  Network Flow Analysis

  Computer Networking: A Top-Down Approach

  Introduction to Sockets Programming in C using TCP/IP
  
  Beej's Guide to Network Programming

  Programming and Automating Cisco Networks

  CCNA Routing and Switching Official Cert Guide

  CCNA Datacenter Official Cert Guide

  CCNP ROUTE, SWITCH, and TSHOOT Lab Manuals

  CCIE and CCDE Evolving Technologies Study Guide
I would highly recommend getting a cheap certification rack from Amazon once you get better book knowledge (CCNA/CCNP Collab, Wireless and Routing and Switching) to increase your knowledge 20x. When I did not have my own hardware there were just so many questions and things I wanted to do that were very complex or not possible to do with training simulators, books, etc.

With the high quality managed switches you can see how your apps can affect the network, integrate your work with network connected devices, automate network devices and many more things that wouldn't give you as deep as an understanding when using an unmanaged network (e.g. create your own software that runs on routers, switches, VOIP phones and linux servers).

techjuice··on Ask HN: Experienced programmers, how do you learn new language?
If you want to become an experienced programmer in a new language you have to pick up the big thick books and apply what you learn while reading them. Online courses are nice but they do not go into the depth that the 700+ page books go into. If you go by courses alone you will always be one of those engineers that has a spotty base foundation and will never truly become an expert due to missing out on something huge that was not covered in an online course.

If you want a good course go for the courses that have 35+ hours of content and go through everything. Remember you are a beginner in the new language so skipping anything is not advised as you might miss out on something important that the experienced engineer is laying down in the course. They normally learn the material they build from the courses from the big books and take bits and pieces of what the books have to condense them down into something a little more light weight.

As when you are sitting at the day job and have over 1 million lines of C and C++ code to go through you really have to have a good grasp on the basics and hard parts of the language to be really effective. Being a junior engineer on the most important project a company has requires some serious reading and implementation time on and off the clock to understand what is going on.

The best part is if the more you dive into the big books the faster you will be able to read them and apply what you learn and profit from that new knowledge. Things really come together when you are able to use knowledge of the base languages (C, C++, Rust, Go, etc.) to help troubleshoot problems in the higher level languages that may pop up as engine errors (PHP, Perl, Ruby, Python, Java, C#, etc.)

Just remember there is no shortcut to becoming a truly experienced engineer. Some point you will have to pick up the big books and dive deep and implement what you learn. Those that do not do it normally reach a plateau in their growth until they take the plunge into the big books, code/developer documentation, etc. and to understand it you have to also implement it and work with it on a daily basis.

techjuice··on Ask HN: Standard Docs for Incorporation
Best thing you can do is to talk to a lawyer and accountant as all businesses should have their articles of incorporation tailored to the founders needs. A few hundred dollars could save you thousands, millions or billions in the long term.
techjuice··on Ask HN: Best 19“ rack for home use?
If you are a previous server/network guy then you will probably just want the best of the best as anything else would just waste your time and be a pain to use.

I recommend the following if you need quiet https://www.apc.com/shop/us/en/categories/racks-and-accessor...

If you have the space and height, might as well just put in a full rack that is also deep so you can put anything in it. https://www.apc.com/shop/us/en/categories/racks-and-accessor...

This way you are not bending over to reach things that would be much easier to reach while standing and it looks very professional, and will align with what is used in the data centers. Security wise, it locks at the front and back, if you need to you can pop the sides off the rack and put them back with little to no effort. Best of all there is room to put a full PDU or PDUs. There are also variants that you can easily move so you only have to unplug the power and fiber uplink(s).

As the smaller 19 inch racks are normally not tall/deep enough to do an advanced home setup (e.g. UPS (2U) at the bottom, routers (2U each for the good ones), KVM (1U), KVM Switch (1U to 2U), switches (1U each) at the top, storage server (2U to 4U), couple of virtualization servers (1U to 4U), firewall (1U to 2U), backup server (2U to 4U)).

My 19 inch rack did not last very long and I decided to chuck it and upgrade to a full rack and never looked back. Small investment for the connivence and flexibility to use a more realistic setup, especially if you are a professional engineer.

If you are not able to get it through regular house doors you can get a split colo rack or rack that is split in two so you can move each piece in and do not have to have it at it's full height until it needs to be finally positioned.

techjuice··on Georgia Tech Creates Cybersecurity Master’s Degree Online for Less Than $10k
A Ph.D. is mainly about research, the courses you take leading up to your dissertation should still teach you more in-depth technology to help insure you are an expert in the field of the degree at the graduate level. Without this in-depth course load you will have weak research and would not have a good in grasp to be able to create anything new, state of the art that helps push the industry forward through advanced research along with being employable.

If you come in the door with these credentials you will be highly qualified to be at least a principal cyber engineer. Your in depth research would makes serious waves in the industry and with real world experience it would be an amazing win-win situation for you and the company that hires you, or even better your own business doing cyber research.

techjuice··on Georgia Tech Creates Cybersecurity Master’s Degree Online for Less Than $10k
Yeah, many would probably have to be broken down into electives, but if all of them were taken the graduate would be an extremely strong cyber engineer versus the current easy cyber degrees that are available now that do not really cover what cyber engineering employers are looking for. Most of the degrees are very general and do not go into depth or build a strong engineer during the process.
techjuice··on Georgia Tech Creates Cybersecurity Master’s Degree Online for Less Than $10k
I would have to guess a Ph.D. in Cyber Engineering to start off near the Vulnerability Research work. Starting with a higher emphasis on research in cryptography, building tamper resistant systems, maintaining integrity and confidentiality on mobile desktop, server, SCADA and embedded systems.

Then kernel development, in depth work with creating custom applications that deal with TCP and UDP security and analysis, deep dives into the inner working on how various IoT devices work, building autonomous cyber reasoning systems, automated cyber ranges, and or automated policy client/server enforcement systems.

techjuice··on Georgia Tech Creates Cybersecurity Master’s Degree Online for Less Than $10k
Hopefully they will have something more advanced in the future, possibly calling it Masters of Science in Cyber Engineering with course work similar to the following:

  [*]Introduction to Graph Design and Theory
  [*]Secure Network Design, Theory and Implementation
  Introduction to Analog and Digital Signal Processing
  [*]Assembly for IA-32 and x86_64
  Assembly for PowerPC, MIPS and ARM
  [*]C/C++ Programming for Windows, Linux and MacOS
  C/C++ Programming for Android, iOS and Embedded Systems
  [*]Python Programming
  [*]Advanced Python Programming
  [*]Automated Testing Theory and Implementation
  Advanced Graph Theory
  Introduction to Game Theory
  Advanced Game Theory
  Building Secure Scaleable Systems and Networks
  Building Big Data Analytics Systems
  [*]Automated Defense and Offensive Systems Theory and Implementation
  [*]Information Assurance Policy
  [*]Reverse Engineering Windows, Linux and MacOS
  Reverse Engineering Mobile Devices and Embedded Devices
  Reverse Engineering SCADA Systems
  Advanced Analog and Digital Signals Processing
  Cryptography for Engineers
  [*]Vulnerability Research Theory and Methods
Updated - [*] Core courses.

If the individual could make it through the above, they would be very knowledgable, experienced and ready for many of the hard problems in the realm of cyber that employers are wanting in extremely high demand.

techjuice··on Ask HN: Is it possible to make this app for android?
Build it and see how it goes. Ideas are nice to have, but of little to no value until you start to implement it to see if it is actually of value.

First step is to learn how to develop android apps.

Read all of this developmenthttps://developer.android.com/training/basics/firstapp/

Learn about Google Maps https://developers.google.com/maps/documentation/android-sdk...

Learn about integrating with facebook https://developers.facebook.com/docs/android/getting-started...

While you are at it make sure you have a decent android device so you can test on hardware. Once you have put the time in to test your idea (40-100hours) you should have a pretty good idea if you want to continue with it. Just because there are ideas and apps that do this does not mean you cannot build something better or more streamlined.

techjuice··on Ask HN: Build server to use in 2018?
You can try gitlab and gitlab-runner https://docs.gitlab.com/ee/ci/
techjuice··on Ask HN: How common are Google-style algorithms interviews outside of S.V.?
If it is for an engineering job that you have to analyze, create, and manage a large amount of data, optimize binary performance and security, write distributed cloud applications that run on bare metal need to be real-time capabilities, build custom routing and switching tech then the Google-style algorithms are very popular.

As without the capabilities to do algorithms and data structures in depth it will be very hard for the incoming engineer to get up to speed on high end engineering projects already in progress along with being able to work on the level required to build newer secure, scalable projects.

If the interviewee shows amazing potential, a good knowledgebase, and drive we may give them a shot and evaluate their progress every six months to insure they are learning what is required for increasing their maximum engineering capabilities. As the worst thing we could do is throw away obvious great capability and potential without giving them a shot, guidance and mentoring.

techjuice··on Someone copied our website, what are things we can do?
The best thing you can do is talk to a lawyer. Normally they would start out with a DMCA and cease and desist notice to the webmaster, domain registrar and hosting company. If things still are not right, more then likely you would end up taking the site owner to court. If you have a trademark then you could also take them to court for using your brand illegally (you have to do this to show you are working to protect your trademark).
techjuice··on Ask HN: Do most IT professionals encourage ASCII art in their code comments?
Normally for SSH login prompts and custom console software startup messages.
techjuice··on Ask HN: Is it a good time to switch to Ubuntu 18.04 desktop?
Works wonderfully, especially with the updated packages and performance enhancements. If you need something from 16.04 or 14.04 there is always VMWare with the Virtualization Extensions enabled which allowed me to still use KVM and older packages when testing backwards compatibility.
techjuice··on Ask HN: $500,000 of copyright infringement on Envato, what to do?
You should talk with a lawyer to see what your legal options are.
techjuice··on The rise of 400G in the data center
It is pretty amazing how fast datacenter hardware has had to innovate to keep up with customer demands and competition. It has not even been 10 years and the speed and capacity capability growth are amazing.

I would not be surprised to see in the next 5 to 10 years 10Gb fiber switches and cards as the regular entry level switch with 1Gb going the way of fast ethernet switches. Then on the high end 1Tbs or 5Tbs 54 port switches with 50Tb stacking interfaces on the backend as storage capacities keep going up per drive.

techjuice··on How do you approach a coworker in a different department?
Since you are at work it could go south pretty quick if she does not feel the same way or even knows about you it can get very awkward and weird for both of you quick. Less career and emotional risk to search outside of work and treat everyone at work as your work brothers and sisters.
techjuice··on How do you approach a coworker in a different department?
Don't do it, this normally just doesn't work out very well. Unless you two are falling hard for each other every time you see each other, already hanging out after work and have each others contact info and talking regularly and going out on dates I wouldn't recommend it.
techjuice··on Ask HN: Why is hackernews so old-fashioned?
It is great that they are keeping it simple. Keeps the front and the backend fast.
techjuice··on Ask HN: How to negotiate large salaries?
At face value it is easy to ask, take your experience (if it is 10+ years in the game) and you have successfully completed many projects send them a response asking for $200,000 and it will be a done deal if they can actually pay that. If that is out of their range, they will normally tell you and you may have to keep looking. I have seen some employees that were literally generating millions for a company but only being paid $80,000/year, poor benefits, .5% raise and no additional compensation (bonuses, stocks, 401k, etc.) or should I say a larger share of their contributions. Good companies will try to give bonuses or above inflation raises at the least.

If you do not have around 10 years and only about 5 then 125k to 150k is a pretty good range if you are really good and have the actual work experience. If you are in a really high cost area you will need to take into consideration the cost of living there. If you do not ask for enough it may limit your living options and after work options. It is normally easier to give a number higher than you want and bring it down to something you really want.

Though, you can really only ask for this rate if you are in the top pool of capabilities, performance and results and the interview is amazing. You also have to consider the amount of risks you are accepting by wanting more money. There will be things that you will be expected to know and do that would not be asked of people they are paying less. These can be things like building entire complex systems from scratch by yourself under little to no supervision under tight deadlines, be called upon to travel to other sites around the world because you would be the one trusted to just get it done and your known to get it done right.

If you are applying for jobs in a popular metro location the chances of making the higher ranges is normally higher.

techjuice··on Ask HN: How good are the “MasterClass” online classes?
For those in the top of their industry for many years still pulling in millions of people every time they create something (music, movies, soundtracks, TV episodes) and have a large video, streaming, Youtube or TV presence, are pretty good along with those that have been doing their thing for 20+ years.

You can normally tell how good it is by how high quality their trailer video is (the best made their own and are actually doing things, besides just looking back at the camera) on the site along with viewing their free Youtube videos and interviews. Even better when their name is almost synonymous with their industry

Most notable on the site are: Armin Van Buuren, Hans Zimmer, Gordon Ramsay, R.L. Stine, Deadmau5, Samuel L. jakson, Gordon Ramsay, Christina Aguilera

techjuice··on Ask HN: How do HN webdevs ensure cross-browser support for websites/webapps?
Something that has helped me is using my own device farm for my top target devices and AWS device farm due to the large amount of supported devices: https://aws.amazon.com/device-farm/ along with using Robot Framework and Xcode or Android/JetBrains software for deeper debugging and testing for full automation as I just do not have the time to do stuff manually anymore.
techjuice··on Ask HN: When did you can consider yourself as senior software engineer?
Generally in large enterprise businesses Senior engineers are normally individual contributors that can independently architect, design, secure, scale, deploy, maintain and close out individual small to medium size programs normally in the thousand to possible low double digit million dollar value range. They will normally interact with other employees, vendors and stake holders in their business unit to achieve goals. Their documentation, CI/CD are normally very in-depth and high quality (95% code documented, user, developer, admin manuals, product slides, etc). Mistakes made by the Senior Engineer may cause loss of revenue due to individual program failures or loss of employees on the team, normally these issues can be recovered from within a short period of time. These engineers may serve as a tech lead and report to a Principal/Senior Principal or Managers for their program. They will also normally help with interviews and some current program planning and proposals for new programs. You may also be in meetings related to your program or office.

Principal/Senior Principal software engineers are also individual contributors that normally do what senior engineers do, but are normally trusted to deal with engineering and technical management of the larger multi-high double to hundred million or billion dollar enterprise national and international scale programs due to having a large history of successful programs experience (e.g. 10 years minimum normally that are critical core business programs). If they make mistakes it can normally causes grave problems to the entire organization that may not be recoverable, multiple closures or high revenue losses across multiple programs. These engineers normally report to C-Suite Executives, and Senior Management, they may also have managers under them. They will normally also provide general and in-depth documentation and training for multiple programs and mentor senior and junior engineers. They will normally write proposals, presentations, BoMs and write job descriptions for multiple program staffing requirements for the company and may serve as program(s) managers or in a supervisory capacity. You will normally be in meetings about multiple programs under you for multiple offices and working on future business programs in the 5 to 10 year range.

There are also normally Fellows grade employees in companies and these individual contributors may service as strictly long term technical business development or program review and sustainment types. They normally have the around 5 to 10 years working as a Principal or Senior Principal engineers but focus more on the technical business side (think more program management with technical skills for future programs). They may also help with the larger enterprise wide programs and normally report to C-Suite Executives or Senior Leadership. You will normally be in meetings helping gather information about programs under your for multiple offices and very long term future business endeavors 10 to 20 years.

techjuice··on Ask HN: Can a company seize my domain bought years prior to it filing for a TM?
Best thing to do is talk to a lawyer in trademark law that operates in your country.
techjuice··on Ask HN: How to start working as a contractor?
You need to factor in the following: Taxes PTO Vacation Equipment Certifications Insurance Costs of hiring people under you Mortgage/Rent Gas/Transit Costs Emergency funds

Essentially as a contractor you should be making at least 2.5x what an employee would make. So if an employee is being paid $120,000 as is in a similar position as you you should be getting paid $300,000/year so you can make the same salary + a little more for the added costs of being a contractor.

What are these extra costs you might be wondering they are: Business registration, licensing, certification, life insurance, private medical/health/dental insurance, taxes, vacation, technology, bills, travel, parking, emergency funds, liability, general and umbrella insurance, car maintenance, car fuel, carl detailing and regular cleaning, house maintenance (yard, inspections, upgrades, insurance, etc.) or rent, payroll if you get your own subcontractors, overtime pay (if you end up working 60 hours a week you need to add in the costs of this. If your employer wants you to work more than that you can renegotiate your rates to accommodate), etc.

As an employee there is about 50% or more costs that you do not see as an employee. It is known and expected that contractors will be paid way more than employees as contractors take on 100% of the risks.

techjuice··on Ask HN: How to not fail on coding interview questions?
Best thing you can do is to enhance your skills in data structures and algorithms so you have a strong base in them. The interviews normally start here for most of these companies because their software deals with a large amount of data structures and/or algorithms and is essential to understand to be a productive contributor there.

If your previous work did not actually require you to know them, they probably where not building algorithms from scratch or optimizing parsing/processing of data very much. As without the essential basics of data structures and algorithms it is very hard to build scalable applications that rely on them.

As you grow in your career you will have to learn things outside of your base knowledge as you move up the ranks on the technical skills ladder. This will be standard requirements for senior level positions which you are probably seeing now. At the junior and mid level you are normally not responsible for building the core pieces of data processing software engines or massively scalable applications that run custom in house algorithms.

If you go through some of the below resources they should help fill that skills gap and make you an overall stronger engineer so you can feel confident applying for senior level positions.

I would recommend taking the following course: https://www.coursera.org/specializations/data-structures-alg... https://www.edx.org/course/algorithms-and-data-structures https://in.udacity.com/course/data-structures-and-algorithms...

and reading the following book: https://www.amazon.com/Introduction-Algorithms-Press-Thomas-...

techjuice··on Ask HN: What skills does it take to level up to a mid-level dev?
Senior developers normally have about 10 years of actual work experience. This is normally a long mix of managing program deliverables, other engineers, mastery of documentation for all aspects of the program or programs and the big one is understanding the big picture and asking why, what, when, where and how for engineering, management and personnel decisions goals for the success of programs(these guys generate a ton of profit just by keeping things on task and focused to achieve the goals of the program(s)).
techjuice··on Ask HN: Government contracting
It may be easier to do the state government contracts first to get used to doing them, get certified and arrange your accounting and other business practices to conform to government regulations. If you just contract in your current state you can grow very quickly, especially if it is for information technology, business management, cyber or physical security related services.

If you have a strong state presence it will be easier for the federal government to validate you for consideration for federal contracts. The best thing about doing the state contracts is if you see another contractor did a shoddy job you can bid for the work that is required to fix it (roads, buildings, computer systems, etc.) next time you are at your local courthouse or any government building ask them how things are running. If you hear complaints, there is a good chance that there is a contract out to get things fixed that you can bid on. The smaller the agency/government unit the faster the contract will normally be awarded (city->county->state->federal), though the bigger the agency normally the bigger the requirements.

If you have a nice bit of successful state contracts it should help you build up enough liquid money that is required to bid on the more lucrative government contracts (some require 1,000,000 in liquid cash to qualify) so you can pay employees even if you get a stop work order from the COTR.

Best way to get big is to start small and build a solid foundation and become a company that all levels of government can trust.

techjuice··on Why Apple doesn’t care about professional Mac users anymore (2016)
They discontinued the xserve in 2011, was nice buying the last three of them directly from Apple.
techjuice··on What is a good tool to block cookies and JavaScript on specific non-GDPR sites?
Best tool is the browser, just disallow cookies and JavaScript by default and enable them on what you want. You can even use addons to fine tune this. Since there is no GDPR compliant lists and no way to insure a site is 100% compliant or stays compliant this may need to be manually managed.

I block all 3rd party cookies by default and force block certain cookies and JavaScript code from running, especially on sites that look really bad or I need to modify to my liking. I would recommend looking into GreaseMonkey and TamperMonkey for full customization.

← PreviousPage 2 of 9Next →