Posts by Raji

Github sponsors

GitHub Announces Sponsorship Program for Developers

May 23, 2019 Posted by News 0 thoughts on “GitHub Announces Sponsorship Program for Developers”

If there was an award for tech company of the year, Microsoft very well may have won it already; GitHub, Microsoft’s recent acquisition, is now offering sponsorships to GitHub contributors.  This news comes as a relief to open source contributors who pour their free time into maintaining dependencies, often with little to no pay. Some of the current methods of paying developers is through third party donations, paid support, and dual licencing. Oftentimes, paid support and dual licencing require developers to work even more hours to cater to companies that use their dependencies. What developers like Henry Zhu, the maintainer of Babel, have been clamoring for is larger investments in their projects. Here’s a quote from Zhu himself:

“We trust startups with millions of VC money and encourage a culture of ‘failing fast,’ yet somehow the idea of giving to volunteers who may have showed years of dedication is undesirable?”

While the sponsorship program may not pump millions of dollars into projects, it provides an accessible way for GitHub users to promote the developers they love. According to GitHub, anyone who contributes to the project will be eligible for sponsorship.

Contributions include but are not limited to bug reports, issue triage, code, documentation, leadership, business development, project management, mentorship, and design.

Though this does sound great on paper, the reality of the situation is that rockstar developers are going to be getting the bulk of the donations. All you need to do is look at GitHub’s sponsorship page to see why that’s true. The announcement page admittedly looks more like a developer dating page. The focus here is on the devs and not the projects, which is certainly okay, but that may leave document writers  and bug fixers out of the new revenue stream option.

It will also be interesting to see how other open source developers react to sponsored devs. Would the sponsorship inspire more commits to show potential sponsors that they’re the most active dev within their project? Any one project can have hundreds, if not thousands, of contributors. What this might inspire in the future is more entrepreneurial open source development. If a developer knows that they can get a consistent revenue stream rather than one time coffee donations, we may see faster version roll outs of our favorite tools. Developers can use the tier system that GitHub sponsors copied from Patreon to receive actionable feedback about what should be included in the next version of a tool.

 

GitHub says that there will be no transaction fees for the first year. For now, it seems that GitHub is not going to charge more than the minimal transaction fee. Though, if GitHub sponsors is wildly successful, don’t be surprised if the company starts taking a cut. Right now GitHub appears to be doing everything they can to get this feature off the ground, going as far as to match donations of up to $5,000.

Will this feature become a ground-breaking element of open source? We’ll have to wait to find out.

Please follow and like us:
0
agtech

Top Funded Agtech Startups From 2016 to 2019

May 22, 2019 Posted by Startups 0 thoughts on “Top Funded Agtech Startups From 2016 to 2019”

As we continue to forge into the 21st century, technology has begun to dominate almost every sector of business. For the most part, technology is seen as a bottom line for industries like finance.  But technology has also shown that it can change our world for the better in a field like agriculture. Unbeknownst to many, farming is no longer primarily the domain of rural folks. Rather, young, plucky entrepreneurs are making a name for themselves in what’s come to be known as agtech. And investors are taking notice, shelling out cash to startups that solve the ever-growing needs of farmers.

Here are the top funded agtech startups in the last few years. As a point of reference, these numbers were sourced from a collection of TechCrunch articles. The links have been provided below.

Plenty: Two years ago, SoftBank invested a whopping $200 million into Plenty, an indoor farming startup. Why that much money? Plenty boasts a yield that’s 530 times greater than other fields and can grow anything except tree fruits and root vegetables. The cash infusion allowed the company to begin building indoor farms across the world.

AppHarvest: AppHarvest, founded by Jonathan Webb, recently raised $82 million dollars to build a new greenhouse facility in Kentucky. The startup provides high-paying jobs, alternative education, and new farming methods in order to boost employment.

BrightFarms: Large scale, indoor farms are no longer ideas relegated to science fiction. BrightFarms is an example of that; the company grows fruits and vegetables in high tech greenhouses that are close to markets. The company raised a little over $30 million to continue building green houses.

Ceres Imaging: The arial images that Oklahoma-based Ceres Imaging provides farmers allows them to make long term judgments on their crops. Rather than use drones, Ceres opts to do things the old-fashioned way: with airplanes. Investors don’t seem to mind, seeing that they banked $25 million nearly a year ago.

FarmLogs: FarmLogs raised $22 million in a series C round. The company has used satellite imagery to identify ways to quarantine infestation in fields. The company also positions itself as a business management platform for farmers, offering insights into crop production and marketing.

Taranis: Tel Aviv is home to a bevy of agtech startups that specialize in precision farming. Drones are used to scout farmland while deep learning algorithms train the drone to spot problems in the crop. The company raised $20 million in a series B round.

Prospera: Yet another Tel Aviv agtech startup that uses AI to collect data about a particular field like the types of diseases that may be affecting a certin crop. The company raised $15 million in a series B round.

SeeTree: SeeTree, the Tel Aviv-based startup, raked in $11.5 million in a series A fund in 2019. SeeTree utilizes drones and AI to provide results-based precision farming.

Artemis: This startup sees itself as the ultimate CMS platform for the burgeoning tech-based indoor farming sector. With Artemis, you can manage workers and ensure food safety compliance. The company has raised $8 million in a series A to continue their efforts.

 

image credit:

Joao Marcelo Marques

Please follow and like us:
0

Millions of Instagram Accounts Exposed in Foreign Database

May 21, 2019 Posted by Technology 0 thoughts on “Millions of Instagram Accounts Exposed in Foreign Database”

Safeguarding databases seems to be the biggest security problem of the 21st century seeing that companies have grown an insatiable appetite for collecting our data for various purposes. Chief among those purposes is the widespread use of learning algorithms that feed on data like the walking dead. There are articles on this site that have cataloged the woes of previous leaks. This one is a bit different.

This case of bad security looks more like a whodunit. Here’s the nuts and bolts: a company that TechCrunch identified as ChtrBox, a social media marketing platform based in Mumbai, stored the phone numbers, email addresses, location, etc. of millions of Instagram users in an exposed AWS database. It was Anurag Sen who discovered the leak and notified TechCrunch. It turns out the company didn’t consider it worthwhile to protect the database with any sort of password.

Though the company pays “influencers” to market products(a crime in itself some may say), there were accounts in the database that, when contacted by TechCrunch, claimed to have never worked with the company. How did ChtrBox come by such information? The TechCrunch article appears to imply that since  hackers were able to exploit a vulnerability in Instagram’s API years ago and steal millions of account information, the data, having been auctioned off, is readily accessible to anyone who wants to start a social media marketing company.

Wink, wink.

TechCrunch also received a statement from FaceBook concerning the possibly unethical data collection that read,

“We’re looking into the issue to understand if the data described – including email and phone numbers – was from Instagram or from other sources. We’re also inquiring with Chtrbox to understand where this data came from and how it became publicly available.”

 

The moral of this story is that if you’re going to collect private information ethically or unethically, at least slightly harden your database with a good password. Though your users would duly appreciate a more rigorous approach. This article gives you the steps to follow in order to secure your database.

Please follow and like us:
0
pair programming

How to Make Pair Programming Fun

May 20, 2019 Posted by Programming 0 thoughts on “How to Make Pair Programming Fun”

Pair programming is a bit like the buddy cop movies you’ve seen out there. You have two programmers working at the same workstation trying to complete a particular feature or get some tests to pass. Unlike the buddy cop movies, bad pair programming techniques can lead to frustrating scenarios. Whether you’re pairing with a remote developer or someone from the office, there are a few basic guidelines to follow to ensure that the pairing session goes smoothly.

 

1. Put your heads together(not literally, unless you want to)

If you don’t agree about how to go about completing a task before you start pairing, you’ll only create stress as you code. The best way to introduce your ideas is to first employ some soft skills. Clear the air by talking about anything that may be troubling you so that your fellow programmer doesn’t think that you’re grimacing at his code when you’re really just pissed about something else. The introductions can be as formal or as informal as needed,  just as long as both of you can get on the same page mentally. Once you’ve done that, it will be easier to express ideas.

 

2. Set up a plan of attack

The productivity parlance “eat that frog” refers to doing your worst(most difficult) task first. When you’re pair programming, you’re probably better off doing the opposite. When I’ve pair programmed, I’ve found that the most exhaustive bit of the task of pair programming was in having to solve  difficult problems. The patience and communication involved in working together can be draining. If this is your first time pair programming together, it will be much better to work on simpler tasks to grow accustomed to working with your pair.

Break down the task into smaller components and proceed from there. However, if you feel that the both of you are pairing rockstars, it may be beneficial to tackle difficult problems early on when you still have the energy to take them on.

 

3. What’s driving and  navigating?

Aside from deciding what you’re going to be working on, you have to figure out how you’re going to work together. In pair programming, the roles of the pairs are divided into a driving and navigating role. Theoretically, the driver is supposed to be the adventurous road tripper who isn’t really sure about the layout of the land and loves asking for directions. The navigator is supposed to be equally unsure, but the access to information should allow her to help the driver.

Why is this theoretical? Well, depending on the coder, the driver could be someone who starts typing code without communicating. That leaves the navigator with nothing to do but check social media. That’s the worst case scenario of a pair programming session, but it doesn’t have to end up this way if the driving and navigating roles are properly defined.

Some of those new to pair programming may think of the driving role in the way most people think of driving: full control. Your job is to clearly communicate what driving and navigating means to both of you. Should the driver explain what they’re about to write before they write it? Or can they go ahead and write code, then talk about what they wrote afterwards? How much input should the navigator have in writing code? Is the driver mostly a stenographer who receives input from the navigator?

These questions don’t have to be answered. The point is to remind yourselves that the driving role isn’t a one woman/man show. Depending on the nature of the problem, the driver’s role can change. What is most important is that there is constant communication. An effective driver is someone who talks about the problem and possible solution out loud so that the navigator can chime in. A skilled navigator could even optimize a certain solution or refactor the driver’s code on the fly.

The navigator shouldn’t be demanding, however. Suggestions would be received much better if posed in a question. Syntax errors and typos can be pointed out at the last possible moment to give the driver space to breathe. In my pairing sessions, we had fun with typos and syntax errors, turning them into small jokes to lighten up the mood. At the end of the day, the driver may already feels a lot of pressure to write good code in front of their colleague. If the navigator is demanding, the driver’s worst fears may be realized, leading to an unproductive session.

 

4. Who’s driving and who’s navigating?

Once the roles have been defined, you can then decide how to best split up the task. There really isn’t a bad way to split up tasks. There are formal definitions like ping pong-ing where roles are switched upon completion of a specific task(it’s technically not a drive-navigator style). For example, the driver writes a test for a module and afterwards the roles switch. The new driver tries to make that test pass.

It doesn’t matter how frequently you switch as long as you switch. Switching roles is one of the biggest advantages of pair programming because, in a way, it reduces the pressure of sitting alone for hours hunched over your keyboard trying to solve a problem.

One great way to trigger role switches, if the nature of the task doesn’t provide obvious switch cues, is to set a timer. Every thirty minutes could trigger a switch. Be sure to take breaks in between as well to get some time to yourself.

 

5. Who gets the credit?

Thanks to git, there’s no need to fight over whose name shows up in the repo. When you create a commit, add aCo-authored-by: name trailer under the commit message. To find out how to do that, check out this GitHub help page.

 

6. Aftermath

So, you’ve made your last commit for the day. Should you just end the session with a perfunctory good job? While that may seem like the nice thing to do, it really isn’t. If something didn’t go as you expected, it’s better to voice those concerns to allow the pair to fix those problems. The way to introduce those concerns is to first talk about what when well. Then, you can talk about what you can improve on individually or as a pair. Afterwards, you can mention specific issues you may have had with the pair.

If the feedback is given in the spirit of desiring excellence, then it will more than likely be taken in stride. The pair would at least respect you for you honesty even if they may disagree with you.

 

So…

Hopefully, these steps have given you a blueprint about how to go about pair programming effectively. Pair programming can be a lot of fun if you do it right. You can learn a lot about the person next to you as you hunker down to solve problems. Don’t be surprised if you start sharing a few anecdotes or if a variable name triggers a discussion. Laying down guidelines may seem dull, but once you’ve set up a parameter, you’re free to play knowing that you’re both on the same page. Many site the disadvantages of pair programming, but there’s no doubt that, if done right, pair programming makes staring at code a whole lot more fun.

image credit:
Alvaro Reyes

Please follow and like us:
0

Stack Overflow Hacker Steals IP Addresses, Names, and Emails

May 17, 2019 Posted by News 0 thoughts on “Stack Overflow Hacker Steals IP Addresses, Names, and Emails”

Mary Ferguson, VP of Engineering at Stack Overflow, announced on May 16 that hackers gained access to the website’s production server as early as May 11.

Now, after further investigation, Ferguson has announced today that the attack originated on May 5. Stack Overflow’s VP of Engineering described the exploit as an escalation of privilege that originated from a bug that was pushed from a build to their Stack Overflow’s development tier. The attacker then was able to access the production server after exploiting the bug.

It was on May 11 that the attacker decided to access production by making changes to the system that gave him such access. Stack Overflow’s investigators assume that the gap was used to explore potential paths of attack. Despite this long gap, the attacker was immediately identified once they escalated privileges.

Why? Because Stack Overflow employed one of the best methods of mitigating the impact of horizontal and vertical privilege escalation: the principle of least privilege. You’re always going to have vulnerability that can be exploited. The point is to create a system that acts like Kevlar against such attacks.

This system is really what good coding/dev practice is all about. Programmers are taught, when creating objects, to make them loosely coupled. In this way, you create code that scales. The same applies to large systems, except that loose coupling in this case creates a secure system by only allowing, say a client, access to essential functions and nothing more.

Once privileges have been segregated, you can then employ a permission checking system that denies permission to certain users by default, like the system used for OS’s. Though, permission checking becomes useless if the user has gained access to a a high level permission by exploiting a vulnerability. Like in the case of the Windows vulnerability where there was a problem in the access check system for certain kernel drives that may have allowed malicious actors to escalate privileges. You can also have human error in the storage of permissions and in the configuration itself. With all that said, checking permissions, if done correctly, can put a stop to potential attacks. The attacker would then have to hope to hit the proverbial jackpot if they want a certain permission level.

In the end, one of the best ways to replicate Stack Overflow’s successful detection is to create a nearly bulletproof network detection system. When referring to the suspicion action the attacker took, Ferguson said, “This change was quickly identified and we revoked their access network-wide, began investigating the intrusion, and began taking steps to remediate the intrusion. ”

Stack Overflow claims that their database was not compromised. The attacker was able to make requests for IP addresses, names, and emails from “some” Stack Exchange users. Ferguson doesn’t give any numbers, but if you take into account that Stack Exchange incorporates millions of registered users, some can mean hundreds of users, if not thousands.

Stack Overflow continues to take the steps required to sanitize the breach–re-configuring passwords, involving third party forensics, etc.

Please follow and like us:
0

Attackers can Hack Airplane Landing Instruments, According to Researchers

May 16, 2019 Posted by Technology 0 thoughts on “Attackers can Hack Airplane Landing Instruments, According to Researchers”

Now that wireless devices are so widespread, hackers have the ability to impact almost every sector imaginable. The aviation industry in particular has been on high alert for almost two decades now, looking out for immediate threats. However, according to a paper written by researchers at Northeastern University, the modern threat to planes can come from a spoofed wireless signal; hackers can attack an aircraft’s instrument landing systems with wireless attacks, they warn.

The problem, like the problem with PLCs in the industrial sector, is that these wireless communications are not secured. Crucial instruments like Traffic Alert and Collision Avoidance Systems(TCAS) and Instrument-Landing Systems(ILS) rely on wireless communication that affect the safety of a flight. The paper cites instances where other researchers were able to compromise some of these instruments:

“…researchers [21] injected non-existing aircraft in the sky by merely spoofing ADS-B messages. Some other attacks [36] modified the route of an airplane by jamming and replacing the ADS-B signals of specific victim aircraft. ACARS, the data link communications system between aircraft and ground stations was found to leak a significant amount of private data [49], e.g., passenger information, medical data and sometimes even credit card details were transferred. GPS, one of the essential navigation aids is also vulnerable to signal spoofing attacks [30]. Furthermore, an attacker can spoof TCAS messages [41] creating false resolution advisories and forcing the pilot to initiate avoidance maneuvers.”

In the case of an ILS, the researchers found that you can spoof radio signals by using commercially available SDRs, which can result in last minute flight abortions and missed landing zones in poor weather. The potential wireless attacks are of two kinds: an overshadow attack and single-tone attack.

According to the researchers, in an overshadow attack, the attacker “transmits pre-crafted ILS signals of higher signal strength; thus overpowering the legitimate ILS signals.” And in a single tone attack, attackers only need to “transmit a single frequency tone signal at a specific signal strength (lower than the legitimate ILS signal strength) to interfere and control the deflections of the course deviation indicator needle.”

When you dig further into the experiment, you’ll find that when the researchers “hijacked” ILS with an overshadow attack, there was an imperceptible change in the flight instruments, which means pilots would not be able to sense that their instruments have been taken over. In the flight simulations the researchers performed, their planes landed as far as 800 meters beyond the safe landing zone. Here’s a video demonstrating the effects of the overshadow attack:

 

credit: youtube

The single tone attack wasn’t as undetectable as the overshadow attack, but the advantage gained by a single tone attack is in the minimal power required to achieve some sort of result. A worst case scenario for an attacker is a denial of service variation that may force the pilot to abort the landing.

These attacks are feasible, in one sense, because technical information about ILS is open to the public and radio platforms are relatively cheap. This means that a lone actor can achieve the same results. However, based on the researchers experiment, the hack requires the attacker to be present. The researchers mark the ideal location of an attacker to be: “at a point along the centerline of the runway that falls within the receiving lobe of the onboard antennas.”  They don’t rule out the possibility of an onboard attacker either, though the experiment didn’t account for the attacker’s location. Still, the amount of equipment needed to pull off the attack before being spotted greatly mitigates the risk.

But that was the same attitude that birthed Stuxnet, when the feasibility of hacking PLCs were debated, leading to little to no countermeasures. We don’t know what the future will hold, if new innovations will allow attackers to remotely maneuver small drones that can spoof signals.

The researchers also propose a couple of countermeasures:

  • Implementation of cryptographic solutions in some cases: ADS-B, ACARS, and TCAS
  • Implementation of a “wide-area secure localization system based on distance bounding [19] and secure proximity verification techniques.”

 

In the end, they concluded that, “an attacker can precisely control the approach path of an aircraft without alerting the pilots, especially during low-visibility conditions.”

image credit:

Gary Lopater

Please follow and like us:
0

Books That Will Make Programmers Think Outside The Box

May 16, 2019 Posted by Programming 0 thoughts on “Books That Will Make Programmers Think Outside The Box”

Programmers often have to solve a variety of problems that range from something simple like fixing a bug to something more complex like writing a search algorithm for a parking locator app. Different scenarios require different methods of approaching and fixing the problem. That means that a programmer has to have a tool set of mental models to help get them through challenges that arise. For an extremely complex problem, those who are skilled at using first principles won’t be trapped by complexity and will immediately start whittling away the problem into its essential parts. The other parts that are fuzzy can always be researched, or can be handled by someone with more expertise.

Mental models expand beyond a single domain into several other fields; an architect may look at the design of a twisting skyscraper and have one thought while a physicist may look at that same skyscraper and have another thought. Things get even more interesting when you add a biologist into the picture and they notice that the peak of the tower resembles that of a bird’s beak. There are a bevy of problems that had to be solved in creating the skyscraper–someone with the ability to tap into all three of these mental models would be able to come up with unique solutions. The person doesn’t have to be an expert in all of the domains either.

An example of mental models put into practise in an engineering setting are Japan’s bullet trains. For a while, they couldn’t solve the problem of the explosion of noise that would erupt when the trains went in and out of tunnels.  Not until a birdwatcher and engineer called Eiji Nakatsu arrived on the scene with brilliant insight.

He reduced noise by redesigning the rig that connect the train to the wires above to mimic the wing of an owl and redesigned the nose of the train so that it mimicked the nose of a kingfisher. The result was a faster, quieter train.

Let’s look at a programmatic setting. You can combine psychology and systems knowledge to create addictive apps that solve the common problem of, “how do we get users to stay on this app?”  à la Facebook. Psychologists who are well aware of incentives and the feedback loops that engineers can reproduce with their systems knowledge use their own mental models and see Facebook and similar platforms as a source of addiction. Ethics aside, you can argue due to tapping into mental models, Facebook’s programmers have largely solved the retention problem.

There’s no doubt that the application of mental models in real life situations can produce noticeable results. The thing is, knowing how to apply a mental model to a given situation takes a lot of experience. Often, those who solve problems don’t need to say that they used X mental model to solve said problem. Their thought process is intuitive. It takes steps to reach this level of intuition. And the first step is to familiarize yourself with mental models that can help you in your day to day problems. There are tons of books out there that cover a slew of mental models. Sprinkled in this list are books that are more “programmer” oriented. I’ve highlighted the books that cater more to the average programmer.

  • Thinking in Systems: A Primer by Donella Meadow
  • The Fifth Discipline by Peter M. Senge
  • An Introduction to General Systems Thinking by Gerald Weinberg
  • Sources of Power: How people make decisions by Gary Klein
  • Thinking and Deciding by Jonathan Baron
  • Super Thinking by Grabriel Weinberg
  •  The Model Thinker: What You Need to Know to Make Data Work for You by Scott E. Page
  • The Great Mental Models by Shane Parrish
  • How to Solve It: A New Aspect of Mathematical Method by G. Poya
  • The Art and Craft of Problem Solving by Paul Zeitz
  • Object-Oriented Design Heuristics by Paul Zeitz
  • The Decision Book Mikael Krogerus
  • Analysis Patterns by Martin Fowler

 

image credit:

Susan Yin

Please follow and like us:
0

Why Standing Desks are Better Than Sitting Desks

May 14, 2019 Posted by Startups 0 thoughts on “Why Standing Desks are Better Than Sitting Desks”

 

To stand or not to stand is the kind of thought that goes into designing an office. Though, the question of whether to build standing desks or sitting desks by now is more a question of health vs convenience. As humans, we’ve been accustomed to sitting in an office since the 18th century. Throughout history, most endeavors that require thinking and writing, or any other official function is associated with a chair. Think of a throne or a judge’s chair. Sitting down to perform a task that requires our brain and our fingers is so ingrained in us that we hardly think about why we do it.

But should our health be sacrificed for the convenience of sitting? Before we tackle the many detriments to one’s health that results from prolonged sitting, we should address the basic fact that our body tells us we’re not supposed to sit for long periods of time. Rarely can someone sit still for long periods of time without fidgeting or shifting their thighs. Architect and writer Witold Rybczynski wrote in The Paris Review that, “We don’t sit still—we fidget, we shift our weight, even if ever so slightly, crossing our legs and arms, moving our cramped muscles. We interact with our chairs: we sit on them, lean back and lean forward, and often perch on the edge of our seats. We wrap our leg around our chair’s leg; we sling one arm across its back, or a leg across its arm…We are good at walking and running, and we are happy lying down when we sleep. It is the in-between position that is the problem.”

 

The problems of sitting

credit: Unsplash

 

The least of the problems for a habitual sitter is a wedgie; in fact, the detrimental effects of sitting, according to research, is more in line with smoking. A study that analyzed a million people found that those who sat eight hours a day had a risk of dying like that of obesity and smoking. Below are some of the negative effects of sitting.

  1. You’re more likely to get heart disease by sitting. When comparing bus conductors, who stand, to bus drivers, who sit, British researchers discovered that bus drivers contracted heart diseases at a much higher rate than conductors. This finding corroborates recent research that shows a correlation between sitting and heart-related diseases.
  2. Since prolonged sitting increases your chances of heart disease, diabetes, stroke, high blood pressure, and cholesterol, it also increases your risk for dementia.
  3. Sitting too long can cause blood clots to form. These clots can break up and effect your lungs, heart, and brain.
  4. Invariably, long periods of inactivity can lead to weight gain if it’s not offset with exercise and a proper diet.
  5. Bad sitting posture only compounds the problems one can face from sitting for too long. Lower back pain, neck pain, and various ailments can ensue.

*Negative health effects sourced from WebMD

The benefits of standing

credit: youtube

 

Now here’s where we tell you that standing desks are far better by sitting desks by expounding some of its virtues. But it should still be noted that sitting desks aren’t a substitute for daily exercise. Standing for long periods of time without moving can also be harmful to your body. You can think about the physical progression in this way as it relates to your heart: standing is better than sitting, walking is better than standing, jogging is better than walking, and running is better than jogging.

That said, standing is a great first step towards avoiding a chair. A study published in the European Journal of Preventative Cardiology in 2018 revealed that someone standing as opposed to sitting six hours a day would burn 54 more calories than the sitting person.

Research spearheaded by Dr. Elizabeth Garland shows that height adjustable desks are linked to increased productivity and health. The peer reviewed study was conducted over a 12 month period. One of the biggest key findings was that the people who received standing desks reported a 17% reduction in sitting. This reduction then implicitly reduces many of the harmful effects that sitting has.

Dr. RJ Burr and other doctors claim that standing desks are a proper solution to alleviating back pain and other health problems caused by extensive sitting.

 

A Happy Balance

credit: axios

 

This blog focuses on the ecosystem of coders, who’ve been stereotyped as sedentary screen addicts. That, in fact, could not be further from the truth. One can argue that startups are leading the standing revolution. From my experience, having attended a coding bootcamp  that mimicked a progressive work culture, using standing desks provided a fresh reprieve from the monotony of sitting for hours on end trying to overcome problems. Using a standing desk made me feel less tied down and more in control.

Whether a standing desk increases productivity is certainly debatable; a recent study that used students as a population did not show any noticeable differences in test performances. That being said, we can’t ignore the mental and physical health benefits that standing desks have over sitting desks. Still, just because standing desks are better, that does not mean that sitting desks have to be eradicated. Adjustable desks are a great way to give workers the choice to sit or stand.

In terms of office design, it may be even better to create a standing and a sitting section so that workers are reminded of the option to stand. During my stint at the bootcamp, I found myself gravitating towards the standing desks. You’d be surprised how quickly those spots start becoming hot commodities as workers actually start to feel the benefit of cutting down on sitting time. The sitting desks would then be useful for resting and vice versa.

In the end, it is better to tackle the “sea of troubles” that sitting washes down on us by standing up rather than sitting and suffering the “slings and arrows” of our increasingly sedentary lifestyle.

Please follow and like us:
0

Infographic: Atlanta Tech Facts You Should Know

May 13, 2019 Posted by Technology 0 thoughts on “Infographic: Atlanta Tech Facts You Should Know”

Atlanta is quickly becoming one of the largest startup centers in the United States. Accelerators, incubators, and work spaces dot this mid-tier city, creating a feverish tech environment. As various cities vie to recreate the magic of Silicon Valley, Atlanta has continuously proved itself to be the Silicon Valley of the south. We’ve gathered some facts to show you how a city that is known more for its pop culture has made an impact on tech culture.

If you want to add to the growing Atlanta tech talent, visit our job board.

 

 

Resources:

https://www.atlantamagazine.com/cooljobs/reality-check-is-atlanta-a-high-tech-hub-or-a-startup-striver/

https://www.cbre.us/about/media-center/atlanta-among-top-3-markets-of-tech-talent-labor-pool-growth-in-cbres-annual-scoring-tech-talent

https://www.tagonline.org/news-press/georgia-tech-president-bud-peterson-inducted-into-technology-hall-of-fame-of-georgia/

Atlanta Outpaces Nation in Tech Talent Growth

Please follow and like us:
0
scientist

8 Programming Languages That Scientists Use

May 10, 2019 Posted by Programming 0 thoughts on “8 Programming Languages That Scientists Use”

There are a lot of general purpose programming languages out in the wild that can theoretically do anything that another language can. For example, Python and Ruby are pretty identical languages. The only reason one has become the dominant language of data science is because of the ecosystem that developed around it. Now, Python is nearly synonymous with data science. But there are other more specific programming languages that cater to a field of science. These are the languages that are considered niche. Those who use them swear by them. To outsiders, you might as well be speaking greek.

Here are eight programming languages(not named Python) that scientists use.

 

MATLAB

Image result for matlab

credit: Mathworks

Matlab is a programming platform developed by MathWorks to allow for matrix manipulations, plotting data, implementation of algorithms, creation of users interfaces. The language is used mostly by students in university level courses. Matlab comes with an IDE, debugger, and a suite of tools and built-in methods, like most other languages.

 

FORTRAN

Image result for fortran

Though Fortran may seem like a relic today(I posted an article about how it was all the rage in the 80’s), it’s still chiefly used by physicists. The main reason for its continued existence is it’s speed and flexibility when it comes to built-in parallelization and arrays. The language is used along with C++ for high computation tasks that involves modeling stars and galaxies, climate, and electronics.

 

ALGOL

Image result for ALGOL

This language is a bit ancient and perhaps only in use in certain mainframes–even then its superset ESPOL would be in use. Why ARGOL is relevant now is that it lay the groundwork for languages like Simula, Pascal, C, and Ada. The reason for ARGOL’s influence lay not only in its syntax but its extensive use in academia. Since ARGOL became the lingua franca of algorithmic description, later works would continue to add new ideas to the world of language and algorithm development, one of them being the ALGOL 60 Report edited by Peter Naur. The grammar description later became standardized and was called the Backus-Naur Form.

APL

Image result for apl programming language

The APL programming language is a programming language for the mathematically inclined individual. Like many other programming languages used for mathematical modelling, the multidimensional array is the primary data type of this language. Unlike many other computational languages, APL is hellish to read. The language attempts to abstract complex mathematical functions into representative symbols. In so doing, skilled APL programmers can increase productivity.

 

J

Image result for j programming language

credit: iTunes

J is what you get when a developer looks at the crazy symbols in APL and says, “I can fix that.” Instead of relying on foreign symbols, J relies on the tried and true ACII character set. Still, J is notorious for its conciseness. One line of J can do more than one page of code in many other languages.  The language is used for mathematical and statistical programming.

 

 Julia

Image result for julia programming language

credit: Wikipedia

Julia has the look of a dynamic scripting language, but it’s multiple dispatch system gives Julia the flexibility to be both dynamic and strongly typed; functional and object-oriented. This means Julia can be applied to various applications. The very ethos of Julia is flexibility. It’s founder, Professor Alan Edelman, wanted Julia to have “the speed of C with the usability of Python, the dynamism of Ruby, the mathematical prowess of MatLab, and the statistical chops of R.” While the language may not have met those loft goals, the principle behind its design makes Julia a handy Swiss Army knife for data scientists.

Wolfram Language

Image result for wolfram language

credit: Wolfram

The Wolfram Language, formerly known as Mathematica, is a language that represents data like strings and integers as symbols. It’s highly symbolic nature is great for representing large data in a clean, readable way.

 

R

Image result for r programming language

 

The R programming language is a language centered around statistical computing. According to the R website, R is “an integrated suite of software facilities for data manipulation, calculation and graphical display.”

 

 

image credit:

 

Lucas Vasques

Please follow and like us:
0