bluuebunny/crossref_metadata_2025 huggingface dataset:
Role of collisional matter in the framework of extended teleparallel theory
Authors: Zeeshan Muhammad , Zubair M. , Saleem Rabia
Published: September 2020

The purpose of this work is to examine the cosmic evolution in the presence of collisional matter (CM) with and without radiations in a modified Teleparallel theory involving a generic function [Formula: see text] which depends on the scalar torsion [Formula: see text] and the boundary term associated to the divergence of torsion [Formula: see text]. We select seven novel [Formula: see text] models including power law, logarithmic models and exponential models, some of these reported in [S. Bahamonde, M. Zubair and G. Abbas, Phys. Dark Univ. 19 (2018) 78; S. Bahamonde and S. Capozziello, The Eur. Phys. J. C. 77 (2017) 107; C. Escamilla-Rivera and J. L. Said, Class. Quantum Grav. 37 (2020) 165002] and discuss the evolutionary scenario. The behavior of deceleration parameter [Formula: see text], Hubble parameter [Formula: see text], Equation-of-state (EoS) for dark energy (DE) and effective EoS is presented. [Formula: see text]CDM epoch and crossing of phantom divide line (approaching to phantom era) is observed in scenarios like noncollisional matter (NCM) with radiation, CM with and without radiation. Results are found to be adequate with recent cosmic observations.
Inflation of universe by nonlinear electrodynamics
Authors: Kruglov S. I.
Published: September 2020

Nonlinear electrodynamics with two-dimensional parameters is studied. The range of electromagnetic fields, when principles of causality, unitarity and the classical stability hold, are obtained. A singularity of the electric field at the center of charges is absent within our model and there are corrections to the Coulomb law as [Formula: see text]. The universe inflation takes place in the background of stochastic magnetic fields. The second stage of the universe evolution is the radiation era so that the graceful exit exists. We estimated the spectral index, the tensor-to-scalar ratio, and the running of the spectral index that are in a rough accordance with the PLANCK and WMAP data.
Governance Mechanism and Structural Power Fit: Evidence from an Information System Development Project
Authors: Kim Sojung , Shim Seonyoung
Published: September 2020

This study identifies how relational and contractual governance mechanisms differently influence the distinct output of information systems development (ISD) performance at the project level. This study also reveals how the consequence of two modes of inter-organizational relationships (IOR) governance mechanism is affected by the gap of a dyadic partner’s centrality within the network — the client’s structural power (CSP). We collected dyadic samples of clients and vendors for 107 ISD projects and explored their governance mechanisms and project performances, all of which were evaluated by both parties. Our results first reveal a positive relationship between relational (or contractual) governance and qualitative (or quantitative) performance, respectively, but not vice versa. Second, the results incorporating a structural position within the network reveal that CSP facilitates the efficacy of relational governance to lead the quantitative performance, but surprisingly, CSP also mitigates the efficacy of contractual governance.
Group formalism of Lie transformations, exact solutions and conservation laws of nonlinear time-fractional Kramers equation
Authors: Momennezhad Zahra , Nadjafikhah Mehdi
Published: September 2020

In this paper, we will concentrate on a systematic investigation of finding Lie point symmetries of the nonlinear [Formula: see text]-dimensional time-fractional Kramers equation via Riemann–Liouville and Caputo derivatives. By using the Lie group analysis method, the invariance properties and the symmetry reductions of the time-fractional Kramers equation are provided. It is shown that by using one of the symmetries of the underlying equation, it can be transformed into a nonlinear [Formula: see text]-dimensional fractional differential equation with a new dependent variable and the derivative in Erdélyi–Kober sense. Furthermore, we construct some exact solutions for the time-fractional Kramers equation using the invariant subspace method. In addition, adapting Ibragimov’s method, using Noether identity, Noether operators and formal Lagrangian, we construct conservation laws of this equation.
DETECTION OF SPIKE-SPECIFIC MUTATIONS IN SEROTYPE I FELINE CORONAVIRUSES IN FORMALIN-FIXED AND PARAFFIN-EMBEDDED TISSUE
Authors: Kuo Shanny Hsuan , Chang Yen-Chen , Chang Hui-Wen , Huang Wei-Hsiang
Published: September 2020

Previously, the M1058L and S1060A amino acid mutations in the spike protein of feline coronavirus (FCoV) have been shown to distinguish feline infectious peritonitis virus (FIPV) from feline enteric coronavirus (FECV) in [Formula: see text]95% of serotype I FCoV (FCoVI)-infected cases, serving as potential FIP diagnostic markers. However, the finding is recently challenged by the demonstration that these markers are merely indicative of systemic spread of FCoV from the intestine, rather than a mutated FIPV with the potential to cause FIP. The aim of this study is to design a modified spike mutation-detection nested RT-PCR to distinguish FIPV from FECV in formalin-fixed and paraffin-embedded (FFPE) tissues from cats confirmed with FIP and controls. While none in the control group was tested positive by the nRT-PCR, FCoVI RNA was detected in 20 of 23 FIP cases. Of the positive samples, 19/20 (95%) FIP cats bore one of the two mutations in the spike gene. The sensitivity and specificity of this test reached 87% (95% CI: 65–97) and 100% (95% CI: 82–100), respectively. The high positive predictive values of 100% (95% CI: 80–100) and the negative predictive values of 88% (95% CI: 68–97) were determined. By using the conventional nested RT-PCR method in FFPE tissue, we revealed the spike gene-mutated FCoVs could be detected in FFPE tissues from FIP-confirmed cats, but could not be amplified from cats without FIP. Our result supports that detection of the two critical mutations correlates the presence of serotype I FIPV in FIP cats.
Development of Low-Cost Cable Twister for 3.6 m Telescope at ARIES
Authors: Bangia Tarun , Uddin Wahab
Published: September 2020

In-house design and development of cost-effective cable twister was undertaken at ARIES for back-end instruments of 3.6[Formula: see text]m telescope at Devasthal site located in central Himalayan region of Uttarakhand state in India. Cable twister was designed to route the critical cables such as cryo/helium flexible lines, electrical cables, optical fiber cables and network cables, etc. of various back-end instruments on axial and side ports of 3.6[Formula: see text]m telescope. Designing a space constrained cable twister passing through only 350[Formula: see text]mm diameter central hole available in telescope pier was a challenging task. Design was analyzed with cables at different twister positions for telescope azimuth rotation from 0 to [Formula: see text]. Flexible design, easy routing of cables and quick detachable characteristic of cable twister make it convenient for routing cables of back-end instruments of 3.6[Formula: see text]m telescope. The twister was economically manufactured in-house at ARIES mechanical workshop, assembled, installed and tested with 3.6[Formula: see text]m telescope. Provision for changing of separator plates having different numbers and sizes of holes makes it versatile for the different types of cables in back-end instruments. This paper presents the economical design, analysis, manufacturing, assembly, installation and testing of cable twister with 3.6[Formula: see text]m telescope.
Metamorphosis: the Coming Transformation of Translational Systems Biology
Authors: Kleinberg Samantha , Mishra Bud
Published: September 2020

One morning, as Gregorina Samsa was waking up from anxious dreams, she discovered that she had become afflicted with certain mysterious flu-like symptoms that appeared without any warning. Equally irritating, this capricious metamorphosis seemed impervious to a rational explanation in terms of causes and effects. "What’s happened to me?" she thought. Before seeing a doctor, she decided to find out more about what might ail her. She logged on to a Web site where she annotated a timeline with what she could remember. Since March, she’d had more headaches than usual, and then in April she had begun to experience more fatigue after exercise, and as of July she had also experienced occasional lapses in memory. "Why don’t I go back to sleep for a little while longer and forget all this foolishness," she thought. As she was about to abandon this errand, the system came back to life with a barrage of questions: Is she female? Had she experienced any significant stress in the past few months? Had she noticed any joint or muscle pain? It also obtained her permission to download her genomic profile.
Maximizing Power Efficiency with Asymmetric Multicore Systems
Authors: Fedorova Alexandra , Saez Juan Carlos , Shelepov Daniel , Prieto Manuel
Published: September 2020

In computing systems, a CPU is usually one of the largest consumers of energy. For this reason, reducing CPU power consumption has been a hot topic in the past few years in both the academic community and the industry. In the quest to create more power-efficient CPUs, several researchers have proposed an asymmetric multicore architecture that promises to save a significant amount of power while delivering similar performance to conventional symmetric multicore processors.
Data in Flight
Authors: Hyde Julian
Published: September 2020

Web applications produce data at colossal rates, and those rates compound every year as the Web becomes more central to our lives. Other data sources such as environmental monitoring and location-based services are a rapidly expanding part of our day-to-day experience. Even as throughput is increasing, users and business owners expect to see their data with ever-decreasing latency. Advances in computer hardware (cheaper memory, cheaper disks, and more processing cores) are helping somewhat, but not enough to keep pace with the twin demands of rising throughput and decreasing latency.
Enhanced Debugging with Traces
Authors: Phillips Peter
Published: September 2020

Creating an emulator to run old programs is a difficult task. You need a thorough understanding of the target hardware and the correct functioning of the original programs that the emulator is to execute. In addition to being functionally correct, the emulator must hit a performance target of running the programs at their original realtime speed. Reaching these goals inevitably requires a considerable amount of debugging. The bugs are often subtle errors in the emulator itself but could also be a misunderstanding of the target hardware or an actual known bug in the original program. (It is also possible the binary data for the original program has become subtly corrupted or is not the version expected.) Solving these problems requires some unusual debugging techniques.
Idempotence Is Not a Medical Condition
Authors: Helland Pat
Published: September 2020

The definition of
distributed computing
can be confusing. Sometimes, it refers to a tightly coupled cluster of computers working together to look like one larger computer. More often, however, it refers to a bunch of loosely related applications chattering together without a lot of system-level support. This lack of support in distributed computing environments makes it difficult to write applications that work together. Messages sent between systems do not have crisp guarantees for delivery. They can get lost, and so, after a timeout, they are retried. The application on the other side of the communication may see multiple messages arrive where one was intended. These messages may be reordered and interleaved with different messages. Ensuring that the application behaves as intended can be very hard to design and implement. It is even harder to test.
OpenFlow: A Radical New Idea in Networking
Authors: Limoncelli Thomas A.
Published: September 2020

Computer networks have historically evolved box by box, with individual network elements occupying specific ecological niches as routers, switches, load balancers, NATs (network address translations), or firewalls. Software-defined networking proposes to overturn that ecology, turning the network as a whole into a platform and the individual network elements into programmable entities. The apps running on the network platform can optimize traffic flows to take the shortest path, just as the current distributed protocols do, but they can also optimize the network to maximize link utilization, create different reachability domains for different users, or make device mobility seamless.
Condos and Clouds
Authors: Helland Pat
Published: September 2020

Living in a condominium has its constraints and its services. By defining the lifestyle and limits on usage patterns, it is possible to pack many homes close together and to provide the residents with many conveniences. Condo living can offer a great value to those interested and willing to live within its constraints and enjoy the sharing of common services.
Code Abuse
Authors: Neville-Neil George
Published: September 2020

During some recent downtime at work, I’ve been cleaning up a set of libraries, removing dead code, updating documentation blocks, and fixing minor bugs that have been annoying but not critical. This bit of code spelunking has revealed how some of the libraries have been not only used, but also abused. The fact that everyone and their sister use the timing library for just about any event they can think of isn’t so bad, as it is a library that’s meant to call out to code periodically (although some of the events seem as if they don’t need to be events at all). It was when I realized that some programmers were using our socket classes to store strings -- just because the classes happen to have a bit of variable storage attached, and some of them are globally visible throughout the system -- that I nearly lost my lunch. We do have string classes that could easily be used, but instead these programmers just abused whatever was at hand. Why?
A Decade of OS Access-control Extensibility
Authors: Watson Robert N. M.
Published: September 2020

To discuss operating system security is to marvel at the diversity of deployed access-control models: Unix and Windows NT multiuser security; Type Enforcement in SELinux; anti-malware products; app sandboxing in Apple OS X, Apple iOS, and Google Android; and application-facing systems such as Capsicum in FreeBSD. This diversity is the result of a stunning transition from the narrow 1990s Unix and NT status quo to ’security localization’ - the adaptation of operating-system security models to site-local or product-specific requirements.
Hazy: Making it Easier to Build and Maintain Big-data Analytics
Authors: Kumar Arun , Niu Feng , Ré Christopher
Published: September 2020

The rise of big data presents both big opportunities and big challenges in domains ranging from enterprises to sciences. The opportunities include better-informed business decisions, more efficient supply-chain management and resource allocation, more effective targeting of products and advertisements, better ways to "organize the world’s information," faster turnaround of scientific discoveries, etc.
Making the Mobile Web Faster
Authors: Matsudaira Kate
Published: September 2020

Mobile clients have been on the rise and will only continue to grow. This means that if you are serving clients over the Internet, you cannot ignore the customer experience on a mobile device. There are many informative articles on mobile performance, and just as many on general API design, but you’ll find few discussing the design considerations needed to optimize the back-end systems for mobile clients. Whether you have an app, mobile Web site, or both, it is likely that these clients are consuming APIs from your back-end systems. Certainly, optimizing the on-mobile performance of the application is critical, but software engineers can do a lot to ensure that mobile clients are remotely served both data and application resources reliably and efficiently.
Swamped by Automation
Authors: Neville-Neil George
Published: September 2020

So your group fell for the "just install this software and things will be great" ploy. It’s an old trick that continues to snag sysadmins and others who have supporting roles around developers. Whenever someone asks you to trust them, don’t. Cynical as that might be, it’s better than being suckered.
The Evolution of Web Development for Mobile Devices
Authors: Zakas Nicholas C.
Published: September 2020

The biggest change in Web development over the past few years has been the remarkable rise of mobile computing. Mobile phones used to be extremely limited devices that were best used for making phone calls and sending short text messages. Today’s mobile phones are more powerful than the computers that took Apollo 11 to the moon with the ability to send data to and from nearly anywhere. Combine that with 3G and 4G networks for data transfer, and now using the Internet while on the go is faster than my first Internet connection, which featured AOL and a 14.4-kbps dialup modem.
Structured Deferral: Synchronization via Procrastination
Authors: McKenney Paul E.
Published: September 2020

Developers often take a proactive approach to software design, especially those from cultures valuing industriousness over procrastination. Lazy approaches, however, have proven their value, with examples including reference counting, garbage collection, and lazy evaluation. This structured deferral takes the form of synchronization via procrastination, specifically reference counting, hazard pointers, and RCU (read-copy-update).
Rules for Mobile Performance Optimization
Authors: Everts Tammy
Published: September 2020

Performance has always been crucial to the success of Web sites. A growing body of research has proven that even small improvements in page-load times lead to more sales, more ad revenue, more stickiness, and more customer satisfaction for enterprises ranging from small e-commerce shops to megachains such as Walmart.
This is the Foo Field
Authors: Neville-Neil George
Published: September 2020

When will someone write documentation that tells you what the bits mean rather than what they set? I’ve been working to integrate a library into our system, and every time I try to figure out what it wants from my code, all it tells me is what a part of it is: "This is the foo field." The problem is that it doesn’t tell me what happens when I set foo. It’s as if I’m supposed to know that already.
Automated QA Testing at EA: Driven by Events
Authors: Coatta Terry , Donat Michael , Husain Jafar
Published: September 2020

To millions of game geeks, the position of QA (quality assurance) tester at Electronic Arts must seem like a dream job. But from the company’s perspective, the overhead associated with QA can look downright frightening, particularly in an era of massively multiplayer games.
Undergraduate Software Engineering: Addressing the Needs of Professional Software Development
Authors: Lutz Michael J. , Naveda J. Fernando , Vallino James R.
Published: September 2020

In the fall semester of 1996 RIT (Rochester Institute of Technology) launched the first undergraduate software engineering program in the United States. The culmination of five years of planning, development, and review, the program was designed from the outset to prepare graduates for professional positions in commercial and industrial software development.
Securing the Tangled Web
Authors: Kern Christoph
Published: September 2020

Script injection vulnerabilities are a bane of Web application development: deceptively simple in cause and remedy, they are nevertheless surprisingly difficult to prevent in large-scale Web development.
A New Software Engineering
Authors: Jacobson Ivar , Seidewitz Ed
Published: September 2020

What happened to software engineering? What happened to the promise of rigorous, disciplined, professional practices for software development, like those observed in other engineering disciplines? What has been adopted under the rubric of "software engineering" is a set of practices largely adapted from other engineering disciplines: project management, design and blueprinting, process control, and so forth. The basic analogy was to treat software as a manufactured product, with all the real "engineering" going on upstream of that - in requirements analysis, design, modeling, etc.
Internal Access Controls
Authors: Sampemane Geetanjali
Published: September 2020

Every day seems to bring news of another dramatic and high-profile security incident, whether it is the discovery of longstanding vulnerabilities in widely used software such as OpenSSL or Bash, or celebrity photographs stolen and publicized. There seems to be an infinite supply of zero-day vulnerabilities and powerful state-sponsored attackers. In the face of such threats, is it even worth trying to protect your systems and data? What can systems security designers and administrators do?
HTTP/2.0 - The IETF is Phoning It In
Authors: Kamp Poul-Henning
Published: September 2020

In the long run, the most memorable event of 1989 will probably be that Tim Berners-Lee hacked up the HTTP protocol and named the result the "World Wide Web." Tim’s HTTP protocol ran on 10Mbit/s, Ethernet, and coax cables, and his computer was a NeXT Cube with a 25-MHz clock frequency. Twenty-six years later, my laptop CPU is a hundred times faster and has a thousand times as much RAM as Tim’s machine had, but the HTTP protocol is still the same. A few days ago the IESG, The Internet Engineering Steering Group, asked for "Last Call" comments on new "HTTP/2.0" protocol before blessing it as a "Proposed Standard".
There is No Now
Authors: Sheehy Justin
Published: September 2020

Now. The time elapsed between when I wrote that word and when you read it was at least a couple of weeks. That kind of delay is one that we take for granted and don’t even think about in written media. "Now." If we were in the same room and instead I spoke aloud, you might have a greater sense of immediacy. You might intuitively feel as if you were hearing the word at exactly the same time that I spoke it. That intuition would be wrong. If, instead of trusting your intuition, you thought about the physics of sound, you would know that time must have elapsed between my speaking and your hearing. The motion of the air, carrying my word, would take time to get from my mouth to your ear.
Reliable Cron across the Planet
Authors: Davidovi Štěpán , Guliani Kavita
Published: September 2020

This article describes Google’s implementation of a distributed Cron service, serving the vast majority of internal teams that need periodic scheduling of compute jobs. During its existence, we have learned many lessons on how to design and implement what might seem like a basic service. Here, we discuss the problems that distributed Crons face and outline some potential solutions.
Dismantling the Barriers to Entry
Authors: Harris Rich
Published: September 2020

A war is being waged in the world of web development. On one side is a vanguard of toolmakers and tool users, who thrive on the destruction of bad old ideas ("old," in this milieu, meaning anything that debuted on Hacker News more than a month ago) and raucous debates about transpilers and suchlike. On the other side is an increasingly vocal contingent of developers who claim that the head-spinning rate of innovation makes it impossible to stay up to date, and that the web is disintegrating into a jumble of hacks upon opinions, most of which are wrong, and all of which will have changed by the time hot-new-thing.js reaches version 1.0.0.
Fail at Scale
Authors: Maurer Ben
Published: September 2020

Failure is part of engineering any large-scale system. One of Facebook’s cultural values is embracing failure. This can be seen in the posters hung around the walls of our Menlo Park headquarters: "What Would You Do If You Weren’t Afraid?" and "Fortune Favors the Bold."
Challenges of Memory Management on Modern NUMA System
Authors: Gaud Fabien , Lepers Baptiste , Funston Justin , Dashti Mohammad , Fedorova Alexandra , Quéma Vivien , Lachaize Renaud , Roth Mark
Published: September 2020

Modern server-class systems are typically built as several multicore chips put together in a single system. Each chip has a local DRAM (dynamic random-access memory) module; together they are referred to as a node. Nodes are connected via a high-speed interconnect, and the system is fully coherent. This means that, transparently to the programmer, a core can issue requests to its node’s local memory as well as to the memories of other nodes. The key distinction is that remote requests will take longer, because they are subject to longer wire delays and may have to jump several hops as they traverse the interconnect. The latency of memory-access times is hence non-uniform, because it depends on where the request originates and where it is destined to go. Such systems are referred to as NUMA (non-uniform memory access).
It Probably Works
Authors: McMullen Tyler
Published: September 2020

Probabilistic algorithms exist to solve problems that are either impossible or unrealistic (too expensive, too time-consuming, etc.) to solve precisely. In an ideal world, you would never actually need to use probabilistic algorithms. To programmers who are not familiar with them, the idea can be positively nervewracking: "How do I know that it will actually work? What if it’s inexplicably wrong? How can I debug it? Maybe we should just punt on this problem, or buy a whole lot more servers..."
GNL is Not Linux
Authors: Neville-Neil George
Published: September 2020

What, indeed, is in a name? As you’ve already seen, this quasi-technical topic continues to cause a bit of heat in the software community, particularly in the open-source world. You can find the narrative from the GNU side by clicking on the link provided in the postscript to this article, but KV finds that narrative lacking, and so, against my better judgment about pigs and dancing, I will weigh in with a few comments.
Use-Case 2.0
Authors: Jacobson Ivar , Spence Ian , Kerr Brian
Published: September 2020

Use cases have been around for almost 30 years as a requirements approach and have been part of the inspiration for more-recent techniques such as user stories. Now the inspiration has flown in the other direction. Use-Case 2.0 is the new generation of use-case-driven development-light, agile, and lean-inspired by user stories and the agile methodologies Scrum and Kanban.
Introducing Research for Practice
Authors: Bailis Peter , Sherry Justine , Peter Simon
Published: September 2020

Reading a great research paper is a joy. A team of experts deftly guides you, the reader, through the often complicated research landscape, noting the prior art, the current trends, the pressing issues at hand--and then, sometimes artfully, sometimes through seeming sheer force of will, expands the body of knowledge in a fell swoop of 12 or so pages of prose. A great paper contains a puzzle and a solution; these can be useful, enlightening, or both. A great paper is a small, structured quantum of human ingenuity, creativity, and labor, in service of a growing understanding of our world and the future worlds we may inhabit.
Chilling the Messenger
Authors: Neville-Neil George
Published: September 2020

Trying to correct someone who has just done a lot of work, even if, ultimately, that work is not the right work, is a daunting task. The person in question no doubt believes that he has worked very hard to produce something of value to the rest of the team, and walking in and spitting on it, literally or metaphorically, probably crosses your "offense" line--at least I think it does. I’m a bit surprised that since this is the first sprint and there is already so much code written, shouldn’t the software have shown up after the sprints established what was needed, who the stakeholders were, etc.? Or was this a piece of previously existing code that was being brought in to solve a new problem? It probably doesn’t matter, because the crux of your letter is the fact that you and your team do not sufficiently understand the software in question to be comfortable with fielding it.
Cluster-level Logging of Containers with Containers
Authors: Singh Satnam
Published: September 2020

This article shows how cluster-level logging infrastructure can be implemented using open source tools and deployed using the very same abstractions that are used to compose and manage the software systems being logged. Collecting and analyzing log information is an essential aspect of running production systems to ensure their reliability and to provide important auditing information. Many tools have been developed to help with the aggregation and collection of logs for specific software components (e.g., an Apache web server) running on specific servers (e.g., Fluentd and Logstash.) They are accompanied by tools such as Elasticsearch for ingesting log information into persistent storage and tools such as Kibana7 for querying log information.
Dynamics of Change: Why Reactivity Matters
Authors: Medeiros Andre
Published: September 2020

Professional programming is about dealing with software at scale. Everything is trivial when the problem is small and contained: it can be elegantly solved with imperative programming or functional programming or any other paradigm. Real-world challenges arise when programmers have to deal with large amounts of data, network requests, or intertwined entities, as in UI (user interface) programming.
Idle-Time Garbage-Collection Scheduling
Authors: Degenbaev Ulan , Eisinger Jochen , Ernst Manfred , McIlroy Ross , Payer Hannes
Published: September 2020

Google’s Chrome web browser strives to deliver a smooth user experience. An animation will update the screen at 60 FPS (frames per second), giving Chrome around 16.6 milliseconds to perform the update. Within these 16.6 ms, all input events have to be processed, all animations have to be performed, and finally the frame has to be rendered. A missed deadline will result in dropped frames. These are visible to the user and degrade the user experience. Such sporadic animation artifacts are referred to here as jank. This article describes an approach implemented in the JavaScript engine V8, used by Chrome, to schedule garbage-collection pauses during times when Chrome is idle. This approach can reduce user-visible jank on real-world web pages and results in fewer dropped frames.
The Singular Success of SQL
Authors: Helland Pat
Published: September 2020

SQL has a brilliant past and a brilliant future. That future is not as the singular and ubiquitous holder of data but rather as a major figure in the pantheon of data representations. What the heck happens when data is not kept in SQL?
Scaling Synchronization in Multicore Programs
Authors: Morrison Adam
Published: September 2020

Designing software for modern multicore processors poses a dilemma. Traditional software designs, in which threads manipulate shared data, have limited scalability because synchronization of updates to shared data serializes threads and limits parallelism. Alternative distributed software designs, in which threads do not share mutable data, eliminate synchronization and offer better scalability. But distributed designs make it challenging to implement features that shared data structures naturally provide, such as dynamic load balancing and strong consistency guarantees, and are simply not a good fit for every program. Often, however, the performance of shared mutable data structures is limited by the synchronization methods in use today, whether lock-based or lock-free. To help readers make informed design decisions, this article describes advanced (and practical) synchronization methods that can push the performance of designs using shared mutable data to levels that are acceptable to many applications.
Cloud Calipers
Authors: Neville-Neil George
Published: September 2020

For the time being, we are likely to continue to have programmers who version their functions as a result of the limitations of their languages, but let’s hope we can stop them naming their next generations after the next generation.
Resolving Conflict
Authors: Matsudaira Kate
Published: September 2020

I am conflicted about conflict. On one hand, I hate it. Hearing people disagree, even about minor things, makes me want to run through the nearest wall and curl up under my bed until it’s over. On the other hand, when it happens, I always want to get into it.
BBR: Congestion-Based Congestion Control
Authors: Cardwell Neal , Cheng Yuchung , Gunn C. Stephen , Yeganeh Soheil Hassas , Jacobson Van
Published: September 2020

When bottleneck buffers are large, loss-based congestion control keeps them full, causing bufferbloat. When bottleneck buffers are small, loss-based congestion control misinterprets loss as a signal of congestion, leading to low throughput. Fixing these problems requires an alternative to loss-based congestion control. Finding this alternative requires an understanding of where and how network congestion originates.
Uninitialized Reads
Authors: Seacord Robert C.
Published: September 2020

Most developers understand that reading uninitialized variables in C is a defect, but some do it anyway. What happens when you read uninitialized objects is unsettled in the current version of the C standard (C11).3 Various proposals have been made to resolve these issues in the planned C2X revision of the standard. Consequently, this is a good time to understand existing behaviors as well as proposed revisions to the standard to influence the evolution of the C language. Given that the behavior of uninitialized reads is unsettled in C11, prudence dictates eliminating uninitialized reads from your code.
The IDAR Graph
Authors: Overton Mark A.
Published: September 2020

UML is the de facto standard for representing object-oriented designs. It does a fine job of recording designs, but it has a severe problem: its diagrams don’t convey what humans need to know, making them hard to understand. This is why most software developers use UML only when forced to. People understand an organization, such as a corporation, in terms of a control hierarchy. When faced with an organization of people or objects, the first question usually is, "What’s controlling all this?" Surprisingly, UML has no concept of one object controlling another. Consequently, in every type of UML diagram, no object appears to have greater or lesser control than its neighbors. These problems mean designs tend to become messy during both initial implementation and maintenance, resulting in more bugs and delays.
Research for Practice: Technology for UnderservedCommunities; Personal Fabrication
Authors: Dillahunt Tawanna , Mueller Stefanie , Baudisch Patrick
Published: September 2020

This installment of Research for Practice provides curated reading guides to technology for underserved communities and to new developments in personal fabrication. First, Tawanna Dillahunt describes design considerations and technology for underserved and impoverished communities. Designing for the more than 1.6 billion impoverished individuals worldwide requires special consideration of community needs, constraints, and context. Tawanna’s selections span protocols for poor-quality communication networks, community-driven content generation, and resource and public service discovery. Second, Stefanie Mueller and Patrick Baudisch provide an overview of recent advances in personal fabrication (e.g., 3D printers). Their selection covers new techniques for fabricating (and emulating) complex materials (e.g., by manipulating the internal structure of an object), for more easily specifying object shape and behavior, and for human-in-the-loop rapid prototyping. Combined, these two guides provide a fascinating deep dive into some of the latest human-centric computer science research results.
Cache Me If You Can
Authors: Loveless Jacob
Published: September 2020

The world is more connected than it ever has been before, and with our pocket supercomputers and IoT (Internet of Things) future, the next generation of the web might just be delivered in a peer-to-peer model. It’s a giant problem space, but the necessary tools and technology are here today. We just need to define the problem a little better.
Popping Kernels
Authors: Neville-Neil George
Published: September 2020

In a world in which high-performance code continues to be written in a fancy assembler, a.k.a. C, with no memory safety and plenty of other risks, the only recourse is to stick to software engineering basics. Reduce the amount of code in harm’s way, keep coupling between subsystems efficient and explicit, and work to provide better tools for the job, such as static code checkers and large suites of runtime tests.
Containers Will Not Fix Your Broken Culture (and Other Hard Truths)
Authors: Kromhout Bridget
Published: September 2020

We focus so often on technical anti-patterns, neglecting similar problems inside our social structures. Spoiler alert: the solutions to many difficulties that seem technical can be found by examining our interactions with others. Let’s talk about five things you’ll want to know when working with those pesky creatures known as humans.
Manual Work is a Bug
Authors: Limoncelli Thomas A.
Published: September 2020

Every IT team should have a culture of constant improvement - or movement along the path toward the goal of automating whatever the team feels confident in automating, in ways that are easy to change as conditions change. As the needle moves to the right, the team learns from each other’s experiences, and the system becomes easier to create and safer to operate. A good team has a structure in place that makes the process frictionless and collaborative
Designing Cluster Schedulers for Internet-Scale Services
Authors: Choudhury Diptanu Gon , Perrett Timothy
Published: September 2020

Engineers looking to build scheduling systems should consider all failure modes of the underlying infrastructure they use and consider how operators of scheduling systems can configure remediation strategies, while aiding in keeping tenant systems as stable as possible during periods of troubleshooting by the owners of the tenant systems.
Watchdogs vs. Snowflakes
Authors: Neville-Neil George
Published: September 2020

That a system can randomly jam doesn’t just indicate a serious bug in the system; it is also a major source of risk. You don’t say what your distributed job-control system controls, but let’s just say I hope it’s not something with significant, real-world side effects, like a power station, jet aircraft, or financial trading system. The risk, of course, is that the system will jam, not when it’s convenient for someone to add a dummy job to clear the jam, but during some operation that could cause data loss or return incorrect results. I rather suspect that having a system like this jam while coordinating, for example, the balancing of electrical power across a power grid would have spectacular and perhaps fatal results.
Algorithms Behind Modern Storage Systems
Authors: Petrov Alex
Published: September 2020

This article takes a closer look at two storage system design approaches used in a majority of modern databases (read-optimized B-trees and write-optimized LSM (log-structured merge)-trees) and describes their use cases and tradeoffs.
Consistently Eventual
Authors: Helland Pat
Published: September 2020

Applications are no longer islands. Not only do they frequently run distributed and replicated over many cloud-based computers, but they also run over many hand-held computers. This makes it challenging to talk about a single truth at a single place or time. In addition, most modern applications interact with other applications. These interactions settle out to impact understanding. Over time, a shared opinion emerges just as new interactions add increasing uncertainty. Many business, personal, and computational "facts" are, in fact, uncertain. As some changes settle, others meander from place to place. With all the regular, irregular, and uncleared checks, my understanding of our personal joint checking account is a bit hazy. While I try to convince myself I’ll someday understand it, I’ve reconciled myself that it’s really consistently eventual.
Workload Frequency Scaling Law - Derivation and Verification
Authors: Mubeen Noor
Published: September 2020

This article presents equations that relate to workload utilization scaling at a per-DVFS subsystem level. A relation between frequency, utilization, and scale factor (which itself varies with frequency) is established. The verification of these equations turns out to be tricky, since inherent to workload, the utilization also varies seemingly in an unspecified manner at the granularity of governance samples. Thus, a novel approach called histogram ridge trace is applied. Quantifying the scaling impact is critical when treating DVFS as a building block. Typical application includes DVFS governors and or other layers that influence utilization, power, and performance of the system. The scope here though, is limited to demonstrating well-quantified and verified scaling equations.
FPGAs in Data Centers
Authors: Alonso Gustavo
Published: September 2020

This installment of Research for Practice features a curated selection from Gustavo Alonso, who provides an overview of recent developments utilizing FPGAs (field-programmable gate arrays) in datacenters. As Moore’s Law has slowed and the computational overheads of datacenter workloads such as model serving and data processing have continued to rise, FPGAs offer an increasingly attractive point in the trade-off between power and performance. Gustavo’s selections highlight early successes and practical deployment considerations that inform the ongoing, high-stakes debate about the future of datacenter- and cloud-based computation substrates.
GitOps: A Path to More Self-service IT
Authors: Limoncelli Thomas A.
Published: September 2020

GitOps lowers the bar for creating self-service versions of common IT processes, making it easier to meet the return in the ROI calculation. GitOps not only achieves this, but also encourages desired behaviors in IT systems: better testing, reduction of bus factor, reduced wait time, more infrastructure logic being handled programmatically with IaC, and directing time away from manual toil toward creating and maintaining automation.
The Secret Formula for Choosing the Right Next Role
Authors: Matsudaira Kate
Published: September 2020

Focus on factors that will increase your career capital and make you a more valuable hire in your next role, and the one after that, and the one after that. When you are looking at the options for your next role, there are smarter choices that you can make.
The Obscene Coupling Known as Spaghetti Code
Authors: Neville-Neil George
Published: September 2020

Since you both are working on the same code base, you also have ample opportunity for leadership by showing this person how you code. You must do this carefully or the junior programmer will think you’re pulling rank, but, with a bit of gentle show and tell, you can get your Padawan to see what you’re driving at. This human interaction is often difficult for those of us who prefer to spend our days with seemingly logical machines. Mentorship is the ultimate test of leadership and compassion, and I really hope you don’t wind up sliced in half on the deck of a planet-smashing space station.
Know Your Algorithms
Authors: Neville-Neil George
Published: September 2020

Knowing that your CPU is in use 100 percent of the time doesn’t tell you much about the overall system other than it’s busy, but busy with what? Maybe it’s sitting in a tight loop, or some clown added a bunch of delay loops during testing that are no longer necessary. Until you profile your system, you have no idea why the CPU is busy. All systems provide some form of profiling so that you can track down where the bottlenecks are, and it’s your responsibility to apply these tools before you spend money on brand new hardware.
Net Neutrality: Unexpected Solution to Blockchain Scaling
Authors: Kuzmanovic Aleksander
Published: September 2020

Provably neutral clouds are undoubtedly a viable solution to blockchain scaling. By optimizing the transport layer, not only can the throughput be fundamentally scaled up, but the latency could be dramatically reduced. Indeed, the latency distribution in today’s data centers is already biased toward microsecond timescales for most of the flows, with millisecond timescales residing only at the tail of the distribution. There is no reason why a BDN point of presence would not be able to achieve a similar performance. Adding dedicated optical infrastructure among such BDN points of presence would further alleviate throughput and reduce latency, creating the backbone of an advanced BDN. The key to this vision, however, lies in establishing trust by the blockchain ecosystem into the underlying networking infrastructure. This, in turn, is achieved by decoupling authority from infrastructure via a provably neutral network design.
The Worst Idea of All Time
Authors: Neville-Neil George
Published: September 2020

In February 2004, with the other members of the Queue editorial board, I was at our monthly in-person dinner meeting, where we gather to come up with interesting discussion topics that will result in practitioner-oriented articles (and the best authors to write them) for publication in Queue. It was only our second year in business, and although we had published some successful and widely read articles, Queue still had no regular columnists. I was initially invited to board meetings by another editorial board member, Eric Allman, and had written a couple of articles for the publication. I was also co-authoring my first book but had never been a columnist. Although the concept seemed appealing at the time, perhaps due to too much wine with dinner, I was at a loss on how to actually make it work.
Industry-scale Knowledge Graphs: Lessons and Challenges
Authors: Noy Natasha , Gao Yuqing , Jain Anshu , Narayanan Anant , Patterson Alan , Taylor Jamie
Published: September 2020

This article looks at the knowledge graphs of five diverse tech companies, comparing the similarities and differences in their respective experiences of building and using the graphs, and discussing the challenges that all knowledge-driven enterprises face today. The collection of knowledge graphs discussed here covers the breadth of applications, from search, to product descriptions, to social networks.
Access Controls and Health Care Records: Who Owns the Data?
Authors: Evans David , McDonald Richard , Coatta Terry
Published: September 2020

What if health care records were handled in more of a patient-centric manner, using systems and networks that allow data to be readily shared by all the physicians, clinics, hospitals, and pharmacies a person might choose to share them with or have occasion to visit? And, more radically, what if it was the patients who owned the data?
Open-source Firmware
Authors: Frazelle Jessie
Published: September 2020

Open-source firmware can help bring computing to a more secure place by making the actions of firmware more visible and less likely to do harm. This article’s goal is to make readers feel empowered to demand more from vendors who can help drive this change.
The Evolution of Management
Authors: Matsudaira Kate
Published: September 2020

With each step up, the job changes - but not all of the changes are obvious. You have to shift your mindset, and focus on building new skills that are often very different from the skills that made you successful in your previous role.
Velocity in Software Engineering
Authors: Killalea Tom
Published: September 2020

Software engineering occupies an increasingly critical role in companies across all sectors, but too many software initiatives end up both off target and over budget. A surer path is optimized for speed, open to experimentation and learning, agile, and subject to regular course correcting. Good ideas tend to be abundant, though execution at high velocity is elusive. The good news is that velocity is controllable; companies can invest systematically to increase it.