• Stonehenge. The secrets of megaliths

      A version how people transported megaliths in Stonehenge.

      image

      They started their work in summer.

      They prepared road for transportation. They needed a clean and glade road without stones and other irregularities. (No.4 on picture)
      Perhaps they cut the topsoil and covered the road with clay. (No.3 on the picture)
      On each side they made curbs ( 5-10 cm). (No.2 on the picture)
      They used clay because they wanted to hold water inside the road.
      In autumn rains filled road with water. It looked like a big puddle. (No.5 on the picture)

      In winter road froze. Then they got a smooth ice skating rink slightly wider than a megalith.

      Megaliths (No.11) were transported in winter.

      Mechanism and vehicles for transportation were prepared in summer.

      Mechanism consisted of three parts.

      image
      Read more →
    • Making a DIY thermal camera based on a Raspberry Pi

        image

        Hi everyone!

        Winter has arrived, and so I had to check the thermal insulation of my out of town residence dacha. And it just turned out a famous Chinese marketplace started to sell cheap thermal camera modules. So I decided to DIY it up and build a rather exotic and useful thing — a heat visor for the home. Why not? Especially since I had a Raspberry Pi lying around anyway… The result is down below.
        Read more →
      • Meet A Content Strategist: An Interview with Dmitry Kabanov, Techstars Startup Digest curator and SXSW Advisor

          Dmitry learned the language of business but I think about the world as an engineer. He works with tech brands to create content and promote corporate culture at scale. Apart from it, he is one of the veterans at Techstars Startup Digest, and he is acting as an advisor for the SXSW tech festival.

          Here is his interview with the LAMA app platform.

          Read more →
        • Is Haskell really the language of geniuses and academia?

          • Translation


          I once had a discussion with a founder of an Israeli startup developing a GPU-based database with a focus on speed. The work stack included Haskell and C++, among others, and the founder was complaining about how hard it is to find competent programmers. Which was part of the reason he came to Moscow.

          I carefully asked if they considered using something more popular and new. And even though the answer was rather polite and well-supported with arguments, it still sounded like “Come on, don’t even bring up these toys”.

          Until then, all I heard about Haskell could be summarized as “be VERY careful in dealing with it”. To get to know Haskell programmers better, I came to a topical Telegram chat with some questions. I was quite afraid at first, and, as it turned out, I was right.

          Haskell doesn’t lend itself to popular explanation, and people seemingly don’t even try. If the topic is ever brought up, it’s only talked about in full depth and as objectively as possible. Someone wrote to me: “One of the defining features of both Haskell itself and its community is that they didn’t try to achieve any kind of mainstream recognition. Instead, they focused on building a logical, principal way of solving real problems over trying to appease the widest audience possible”

          Nevertheless, a couple of people did tell me about their experiences, which are shown below.
          Read more →
        • Choosing true wireless earbuds: 6 months later…

          • Translation


          Once I put on true wireless headphones and all the cables after that (even if it's a flexible headband on a “wireless” headset), became annoying. So I’ve tried a lot of AirPods-like earbuds in order to find the best ones. In 2018 aside from the AirPods themselves I tried: Jabra Elite 65+, Samsung IconX 2018 and Sony WF-1000X. The result was a neat table with all the objective data. Everything else — my personal opinion — let's discuss in the comments.
          Read more →
        • Smart Lock: Why sloth is a driver of the IoT progress

            When you are sitting in your comfy chair in your cool modern office, anything distracting you from your favorite routine is really annoying. Some may call it a sign of sloth, but in fact, it relates to optimization of workflows. Our computers and smartphones provide us with many opportunities to do a lot without leaving our place. Software as such cares about our control over the physical world by just clicking and tapping. Indeed, the digitization advances: what people have had to do with their muscles for centuries in the past, could be done with either a voice command or a text message today thanks to numerous remotely controlled gizmos. And the IoT plays a crucial role in all this for a reason.
            Read more →
          • Real-time Chat Solutions vs Chat Platforms — Make Your Choice

            It’s More Than You Imagine…

            The possibility of acquiring more profit through a chat app solution is gaining popularity than adopting to monthly plans based chat platforms


            With the rise of instant conversation among the users, it's not surprising that the global mobile messaging app is estimated to reach around 2.1 billion active users by 2020. When the communication lies as the significant action in nature, then in fact the underlying tool “messaging application” also acquires the same importance. Thus, every chat platforms like WhatsApp demand a great market value according to the features and functionalities listed. Most of the business professionals and enterprises are urged to rely on subscription-based plans to avail such messaging platform.
            Read more →
          • AdBlock has stolen the banner, but banners are not teeth — they will be back

            More
            Ads
          • False Positives in PVS-Studio: How Deep the Rabbit Hole Goes

              Единорог PVS-Studio и GetNamedSecurityInfo

              Our team provides quick and effective customer support. User requests are handled solely by programmers since our clients are programmers themselves and they often ask tricky questions. Today I'm going to tell you about a recent request concerning one false positive that even forced me to carry out a small investigation to solve the problem.
              Read more →
            • Blazor 0.8.0 experimental release now available

                Blazor 0.8.0 is now available! This release updates Blazor to use Razor Components in .NET Core 3.0 and adds some critical bug fixes.


                Get Blazor 0.8.0


                To get started with Blazor 0.8.0 install the following:


                1. .NET Core 3.0 Preview 2 SDK (3.0.100-preview-010184)
                2. Visual Studio 2019 (Preview 2 or later) with the ASP.NET and web development workload selected.
                3. The latest Blazor extension from the Visual Studio Marketplace.
                4. The Blazor templates on the command-line:


                  dotnet new -i Microsoft.AspNetCore.Blazor.Templates::0.8.0-preview-19104-04

                You can find getting started instructions, docs, and tutorials for Blazor at https://blazor.net.

                Read more →
              • The story of how we changed the PVS-Studio icon



                  The 7.0 release marked a new milestone in the history of the PVS-Studio analyzer — the analysis is now available not only for the code, written in C, C++, C#, but also in Java. In addition to this global improvement, some existing mechanisms for the analysis are refined and improved, diagnostic rules are added. There was another significant change that you could hardly missed. We changed the icon.

                  Note. In the article, you will not find cunning tricks or tips on designing icons. The purpose of the article is a bit different this time — it is to tell a story, and, if possible, make it interesting.
                  Read more →
                • Detecting Web Attacks with a Seq2Seq Autoencoder

                    image

                    Attack detection has been a part of information security for decades. The first known intrusion detection system (IDS) implementations date back to the early 1980s.

                    Nowadays, an entire attack detection industry exists. There are a number of kinds of products—such as IDS, IPS, WAF, and firewall solutions—most of which offer rule-based attack detection. The idea of using some kind of statistical anomaly detection to identify attacks in production doesn’t seem as realistic as it used to. But is that assumption justified?
                    Read more →
                  • Low-budget stereo rendering in few lines of code (stereogram, anaglyph, stereoscope)

                    • Tutorial
                    Another weekend has come, which means I am am writing another couple dozen lines of code and make an illustration or two. In previous articles I’ve explained how to do ray tracing and even blow stuff up. This might surprise you, but computer graphics is quite easy: even a couple hundred lines of bare C++ can produce some very exciting imagery.

                    Today’s topic is binocular vision, and we won’t even break the 100 lines barrier doing it. Since we can draw 3D scenes, it’d be foolish to ignore stereo pairs, so today we’ll make something like this:


                    Read more →
                  • The Overview of JavaScript Frameworks: Which One to Choose for Your Project?

                    Ten years ago, companies who wanted to create cross-platform projects would have to cooperate with different development teams and experts. However, 2009 has changed the game, because the developers from Nitobi (later purchased by Apache) presented Cordova – a fresh framework that was able to convert web applications into mobile systems. Linking the devices’ APIs via plugins, developers could access smartphones and tablets. Cordova is a JavaScript-based tech compatible with various platforms.

                    In this guide, we will review three more JS-driven systems, look at their unique features and compare them.
                    Read more →
                  • Designing Sound for Pathfinder: Kingmaker


                      Pathfinder: Kingmaker (PF:K for short) is a role-playing video game created by Owlcat Games, released in Fall 2018 on Steam and GoG. Inspired by classic Bioware games, this project uses a popular board game system ruleset, combat takes place in Real-Time with Pause, follows an isometric camera, and has a non-linear story with multiple unique endings.


                      In this article, I will share a little about how we worked on designing the audio throughout the game’s development including task management, the search for inspiration, and troubleshooting. An experienced specialist may not find anything particularly groundbreaking in this recap, but beginners and enthusiasts will definitely discover some points of interest.

                      Read more →
                    • Implementing UI in iOS: Better, faster, and it scales



                        A few months ago I came across a very interesting documentary series on Netflix called Abstract, they basically explore the output of professional designers from different sectors like architecture, graphic design, fashion, … in their workplaces.

                        It was easy to spot some similarities in the work of designers from other fields with that of an iOS developer who implements user interfaces. For example, when a designer is creating something that is big enough to be broken down into smaller parts, using a strategy like ‘Divide and Conquer’ is key to being able to focus on smaller parts that will be assembled at later stages in the process.

                        Breaking down a whole design into smaller subunits allows us to think about each problem in isolation, removing any dependencies between the components. But the full picture also needs to be present throughout the whole process, otherwise there can be problems when the time comes to fit everything back together.

                        On the other hand, while watching Abstract I noticed that in the design process for objects like a shoes, banners or buildings the final design remains fixed for the lifetime of the product. The design of a Nike shoe isn’t going to change after it is released and there aren’t going to be any updates once it’s on the shelf in the shop. Sometimes a design remains unchanged even 20 years later, and the product is still sound.
                        Read more →
                      • I lost faith in the industry, burned out, but the cult of the tool saved me

                        • Translation


                        I often rail at technologies I find inadequate, and in response I receive (along with arguments) sheer anger and pain. Sometimes physical.

                        Developers take critique of their favorite technologies very personally for some reason. This “cult of the tool” is such a strange phenomenon I can’t explain it logically. Some say everyone’s prone to it, because a coder’s thinking processes intertwine very deeply with his programming language. Some say it’s a junior’s fallacy — you write something for the first time, it works, and you start treating your language like something divine.

                        Whatever it is, I never understood it.

                        I always considered cultists as imbeciles. But I always try to understand why imbeciles became them, why I’ve avoided that fate. I start thinking and bam! — it turned out I’m also an imbecile. I’m a cultist who worships F#. And, of course, there’s a story behind it.
                        Read more →
                        • +24
                        • 33.5k
                        • 2
                      • Independent Tests of Baikal-T1 — the first Russia's 28 nm SoC — and BFK 3.1 Evaluation Board

                          Tech journalist Igor Oskolkov of 3DNews.ru has recently tested publicly available version of the evaluation board or, as the vendor calls it, the developer software-hardware complex, under the code name BFK 3.1 with the Russian SoC Baikal-T1 based on the MIPS P5600 Warrior architecture. Here goes the English translation of his text, that was first published in Russian by servernews.ru.
                          Read more →
                        • The Processing of Unrecoverable Errors in Swift

                          • Tutorial

                          Preface


                          This article is an example of how we can do research into Swift Standard Library functions behavior building our knowledge not only on the Library documentation but also on its source code.


                          Unrecoverable Errors


                          All events which programmers call "errors" can be separated into two types.


                          • Events caused by external factors such as a network connection failure.
                          • Events caused by a programmer's mistake such as reaching a switch operator case which should be unreachable.
                          Read more →
                        • Top 10 IoT sensors in 2019

                            The very paradigm of automation where IoT solutions play a key role is based on a presumption that machines can act in both autonomous and intelligent manners. And what enables them doing so is a capability of handling tremendous flows of collected data.

                            The collectible data includes those various signals that both animate and inanimate object can send to the IoT systems. Hence, the objects should have some highly specific signal-generating devices to share information within the IoT.
                            Read more →
                          • I ruin developers’ lives with my code reviews and I'm sorry

                            • Translation


                            Once upon a time there was a guy on my team so weak that he was going to be fired (a developer! Fired!). Every comment of mine was another nail in his coffin. I could almost hear the bang of the hammer every time I clicked “Submit review”. He was a nice person and I almost felt bad for him, but it didn’t stop me from tearing his work to shreds. I had an inalienable right to criticize his work, right? I’m a better developer, therefore I’m right. No one wants to say that bad code is good, right? He was eventually fired, not before leaving him without the customary bonus for a couple months.

                            I said to myself: “I’m not going to do his work, right? He was taking the place of a more talented developer. I did everything right”. But then I received another pull request for a review, and something changed. Drastically.
                            Read more →