Noutați

How To Supercharge Your User Interface With Skia4Delphi

Skia is a very popular open-source 2D graphics library that provides common APIs that work across a variety of hardware and software platforms. It is interesting to note that is sponsored and managed by Google but it is available for use by anyone. In fact, it serves as the graphics engine for many web browsers today including Google Chrome, Chrome OS, Android, Mozilla Firefox, and Flutter to name a few.  The product has been around since 2005 and it has become part of most windows application development. The same thing goes with VCL and FireMonkey cross platform apps. Thanks to the Barbosa brothers from Brazil, the brilliant minds behind the Skia4Delphi library (with the encouragement of Embarcadero’s Ian Barker and Jim McKeeth). They were also hailed as 2021 Delphi Award winners for their impressive work. What you should know about Skia4Delphi Skia4Delphi is a cross-platform 2D graphics API for Delphi platforms based on Google’s Skia Graphics Library. It is a free-to-access library that provides major components/controls like TSkLottieAnimation, TSkPaintBox, and TSkSvg. In this webinar, we will take a deep dive to explore this useful library and discover how this can supercharge the user interface of your apps. The webinar will also discuss why it is more beneficial to use Vector graphics (SVG) than JPEG and PNG image formats. SVG and Lottie Animations make it easy for the designer to create smooth and high-resolution user interface templates. The webinar will also provide us with some cool demos including some visually stunning Shaders and how this language (SkSL) can effectively level up your interface with its beautiful 3D animations. One of the cool things about the Skia Shader Language is it works across all platforms, and it doesn’t require OpenGL or any special drivers to be installed on the platform. Some of the demos in this webinar will also show what exactly Skia4Delphi is capable of.  These samples include an interactive Brick game, a Star Trek data dashboard replica, and many other mobile demos showcasing Skia4Delphi’s full potential. We will also be introduced to Telegram Sticker Browser, a project that helps users browse Lottie animations and Telegram stickers more efficiently. To know more about the amazing Skia4Delphi library and how this can turbocharge your VCL and FMX apps, feel free to watch the Skia4Delphi webinar below. It is also interesting to note that Embarcadero Technologies is currently organizing a SKIA For Delphi Contest encouraging everyone to make their own GUI application using the Skia4Delphi features.

Read More

Everything You Need To Know About An IDE For Coding

Programmers write code on different operating systems like Windows, Linux, and Mac OS. Each OS has a dedicated IDE, but there’s a good selection of IDE tools out there when you’re searching for an IDE for coding. These include tools for writing, building and testing the code. Using an IDE gathers together a number of development tools under a single framework, application, or service that allows users to pinpoint coding errors to simplify application development. Let’s take a moment to examine what an IDE is and what it can do for developers. What is an IDE? The acronym IDE stands for Integrated Development Environment and facilitates the development of many applications. For example, a Windows IDE offers one central interface consisting of all the tools necessary for developers to create and deploy applications which are designed for the Windows operating system. These tools encompass the following four features: Code editorThe primary purpose behind designing code editors is to write and edit source code. These editors are also like text editors, but designers utilize code editors to simplify and enhance the process of writing and editing code. This is especially beneficial for developers as the coding phase becomes easier. CompilerWindows compiler helps transform the original code, written in human-readable form, into an executable machine-readable format. DebuggerDebuggers examine code and find errors in the way functions are executed. These help developers test and understand the flow of application programs. Code examination eliminates errors, so your program performs how you want it to. AutomationThese tools allow users to develop procedures within a program, making it easier to automate tasks and save time. Key features of the IDE for coding Some IDEs also come with the following three features: Class browserClass browser is used to reference the properties of an object-oriented class hierarchy. Object browserObject browser is used to examine object instances in a running application command. Class hierarchy diagramThe diagrams help programmers to visualize the structure of OOP code. How to make the right choice for IDE for coding? The choice you make is highly dependent on your needs as a developer. There’s nothing like an IDE which is perfect in every way for every person. The needs you may have when developing a specific application may change depending upon what you hope to achieve. However, below are a few pointers that you should consider before choosing an IDE that best meets your needs: The costEven though most of the IDEs are free, many of the addons may not be. Most of the paid IDEs come with premium features and support. When opting for an IDE like Delphi, it’s crucial to remember to choose according to the Windows app development requirements. Ease of useIDEs consisting of a considerable number of libraries and packages often can become complex and harder to use. This, however, is highly dependent on the implementation of these libraries. Server connectionAnother crucial aspect of choosing IDEs is to check if you can deploy your code to the server from your IDE. Why do developers use IDEs? IDEs help make programming less cumbersome by allowing users to program new applications quickly. This is because multiple utilities don’t need to be manually configured and integrated during the initial setup process. Also, by becoming familiar with a single integrated environment, developers do not […]

Read More

Battling toolchain technical debt

Developers love their tools. Operations teams love their tools. And security teams love their tools. As Dev, Sec, and Ops consolidate onto a single DevOps platform, toolchain technical debt becomes exponentially more costly and complex. “Tools should be in the background enabling excellent development, operations, and security practices. However, DevOps teams are often led by their tools rather than the other way around and that can hinder all aspects of the software development lifecycle (SDLC),” says Cindy Blake, CISSP, director of product and solutions marketing at GitLab. An April 2022 Gartner® report titled “Beware the DevOps Toolchain Debt Collector” notes that “many organizations find themselves with outdated, poorly governed, and unmanageable toolchains as they scale DevOps initiatives.” One of the key findings, according to Gartner, is that “most organizations create homegrown toolchains, often leveraging the tools beyond their functional design. This not only leads to a fragmented toolchain, but also creates complications when tooling needs to be scaled, replaced, or updated.” Toolchain technical debt introduces complexity as companies shift critical tasks such as reliability, governance, and compliance left in the SDLC. Discover how GitLab 15 can help your team deliver secure software, while maintaining compliance and automating manual processes. Save the date for our GitLab 15 launch event on June 23rd! No time for technical debt Few DevOps teams give toolchain upkeep the time and attention it requires. According to GitLab’s 2021 DevSecOps survey, nearly two-thirds of survey respondents, 61%, said they spend 20% or less of their time on toolchain integration and maintenance each month. “Developers face challenges and time constraints while maintaining these complex, stand-alone tool siloes, building fragility and technical debt that the [infrastructure and operations] leader has to deal with,” Gartner states. The research firm adds, “These outdated toolchains further increase overhead costs, magnify technical risks, add operational toil, and limit business agility.” Blake agrees: “Complex toolchains inhibit the ability to govern the software development and deployment process. Policies must be managed across tools and visibility into code changes and changes to its surrounding infrastructure become difficult to see and track. Time is wasted on managing the toolchain instead of value-added work.” Getting purpose-driven The remedy to toolchain sprawl and subsequent debt is to change strategy. Instead of putting energy into figuring out how to maintain one-off tools, DevOps teams should focus on how to enable processes and policies that support simplicity, control, and visibility across the SDLC. “These are the characteristics needed to meet reliability, governance, and compliance demands. A united platform like GitLab helps you do that,” Blake says. Gartner states: “Successful infrastructure and operations leaders reduce technical debt and sustainably scale DevOps toolchain initiatives across the organization by using a prioritized, iterative strategy that minimizes friction in making changes to toolchains and more quickly delivers customer value.” Adopting a purpose-built platform instead of a complex and ad-hoc toolchain also eases an organization’s ability to automate the SDLC. “Automation abstracts complexity away from the developer and provides guard rails so DevOps teams gain greater efficiency, accuracy, and consistency,” Blake says. In addition, automation reduces the audit footprint in terms of what needs oversight and inspection. Platforms also support automation throughout operations, including building and testing infrastructure as code, so that “you can eliminate the variables when you’re trying to debug an application,” she says. […]

Read More

How to ask smarter DevOps questions

GitLab has surveyed DevOps practitioners for more than five years now. In that time, we have come to know what questions to ask to understand how well teams are doing with DevOps. In sharing these 10 questions, we aim to help you assess your own team’s capabilities and achieve smarter, faster DevOps. How fast is your team releasing code today vs. one year ago? Tracking release speed is like taking the temperature of your DevOps team. You’d like to think everything is going well, but you might be surprised. Occasionally DevOps teams report to us they are actually releasing code more slowly than in the past. What stage(s) in the process are causing the most release delays? This question will shine a spotlight on the areas in your DevOps practice that simply don’t work. Spoiler alert: The answer will certainly be testing, though other things, from planning to code development and code review, might pop up, too. How automated is your DevOps process? Ask this, but don’t just focus on testing, tempting as that might be. Also think about what else in the software development lifecycle would benefit from automation. Consider what getting that time back would afford you. Could you assign your developers and ops pros to other business-critical projects? What’s been added to your DevOps tech stack over the last year? It’s good to look back and take inventory of the technology you have in play. This is also data that can help inform what your next steps might be, such as adopting GitOps, observability, or AI. How are your DevOps roles changing? If your team is like others we’ve heard from, (big) changes are happening. Devs are picking up tasks that have traditionally been owned by ops, ops is becoming anything from a DevOps coach to a platform engineer or a cloud expert, and security is likely now embedded in development teams. How does security integrate with DevOps in your organization? The most successful DevOps teams have figured out how to bridge the dev and sec divide. Whether your team has a security champion or actually embeds sec pros on the dev team, this is a critical piece in the process to release safer software faster. What advanced technologies are you using (or considering) in your DevOps practice? “Bots” can test code, AI can review code, and a low code/no code tool will make citizen developers out of anyone in the organization. Now is definitely the time to make sure your DevOps team is future-proofing the tech stack. Do you have a plan for governance and compliance of your software supply chain? To keep the software supply chain secure, DevOps teams need visibility into and control over the entire development lifecycle. Can you easily deal with audits or attestations of compliance? Mature governance and compliance processes are essential in all industries today, not just those that are highly regulated. What advanced practices are you using (or considering) in your DevOps environment? Whether it’s Infrastructure as Code (IaC), GitOps, or MLOps, cutting-edge practices can jumpstart your releases and bring new and interesting opportunities to DevOps teams. Do you regularly assess DevOps careers and roles on your team? Happy team members really are more productive, so consider this a PSA to keep career growth conversations a priority. In considering […]

Read More

External PostgreSQL 12 and 13 servers should be upgraded to the latest minor version

A bug in certain versions of PostgreSQL, called the use-after-free bug, can cause segmentation faults. If you are affected, you should upgrade. The affected PostgreSQL versions are: PostgreSQL 12 versions earlier than 12.7. The bug was patched in PostgreSQL 12.7. PostgreSQL 13 versions earlier than 13.3. The bug was patched in PostgreSQL 13.3. Which versions of GitLab could be affected? GitLab EE versions 14.9 and later are affected, if your version of PostgreSQL is an affected version. GitLab CE versions 15.1 and later are affected, if your version of PostgreSQL is an affected version. Omnibus GitLab instances using a bundled PostgreSQL server are not affected as they ship with patched versions of PostgreSQL, and no further action is needed. We strongly recommend all instances using an affected PostgreSQL version to upgrade to the latest minor version for PostgreSQL version 12 or 13. For more detailed information, review our issue on this problem. “External PostgreSQL 12.7- and 13.3- servers used with GitLab should be upgraded to the latest minor version.” – Yannis Roussos Click to tweet Sign up for GitLab’s twice-monthly newsletter

Read More

GitLab is the single source of truth for eCommerce provider

eCommerce platform provider Swell was built to give entrepreneurs the opportunity to build the online business that they envision. A GitLab customer since 2021, GitLab has been adopted as Swell’s one DevOps, project management, and support ticketing tool for the whole organization. It’s the foundational platform that the business works on. Swell is using GitLab Premium in many different areas, including for product development and to build the platform infrastructure, says Nico Bistolfi, vice president of technology. “GitLab is our source of truth for everything,” Bistolfi says. Now, Swell is looking into expanding its usage of the platform to leverage features such as code quality, automation, and other types of dynamic application security and static application security. GitLab for CI/CD Swell upgraded to the Premium version and the biggest advantage so far has been the review operations capability, Bistolfi says. The company has created environments for every merge request users make, and that replicates in production for testers to see what was changed, whether a fix was made, or how the new feature is working. “We could not go to our software development lifecycle today without the review ops. That’s something that is critical for us,” Bistolfi says. GitLab is used for both continuous integration (CI) and continuous deployment (CD). While building the CI/CD pipeline process is ongoing, Bistolfi says, “We are slowly changing it and relying more and more on GitLab” in areas, including application security. Before moving to GitLab, Swell was using bare-metal servers. The company now uses GitLab’s container management solutions and all API updates are happening through the platform. From inputting issues to resolution Everyone at Swell is using GitLab — not just developers — and for a variety of tasks. The company has created a way to process support tickets through the platform. Another use case is knowledge management. “We find ourselves making some decisions from comments in GitLab,” he says. The whole process from the time a ticket is created to being resolved is done within the platform. The company culture is about full information transparency, Bistolfi says, particularly since Swell is fully remote and employees work from 11 different countries. So one goal is to maintain asynchronous communication. When an issue is created in the platform, a little bit of coding is required, but he said non-developer users have adapted well. The feedback so far has been that using GitLab has been frictionless. Speed to delivery Initially, for some services, it took about 30 minutes to build and deploy an image. Now, the process has been decreased to between one and five minutes in most cases. Swell manually sets release dates for system improvements and, right now, there are about two a week. The company is working on automating the process for continuous delivery with the goal of soon having releases every couple of hours. Team play Swell manages team backlogs, sprints, milestones, and future work using its own flavor of Kanban with what Bistolfi calls “quick labels.” Engineering teams are being scaled and, in addition to Kanban, some projects are done using Scrum. Changing their GitLab configuration has let teams measure velocity better. A future goal is to gain visibility into team results, as well as use GitLab for project planning and management, he says. GitLab as a product and company Bistolfi […]

Read More

Check Out This Fun Brick Game Written In Delphi With Skia4Delphi

Picking the best User Interface framework for any windows application development is important and is beneficial for both developer and end-user. There is also a great number of third-party libraries in Delphi that you can use to level up your VCL or FMX apps and make them more visually appealing. Skia is probably one of the most powerful open-source 2D graphics libraries available today that provides a comprehensive 2D API that can be used across mobile, server, and desktop models to render images. We can also recall how Ian Barker managed to build a replica of the Star Trek data dashboard interface (LCARS) using the Skia4Delphi components. What else Skia4Delphi can do? Skia4Delphi is a fast-moving project under very active development and the possibilities of creating amazing interfaces using its powerful library are seemingly limitless. In this video which is an excerpt from the recently concluded Skia4Delphi webinar, we will get to see a demo showing what exactly Skia4Delphi is capable of. In this demo, we’ll see an interactive game similar to the classic Breakout game from the 80s. The sample comes with a simple form that contains TSKAnimatedPaintBox, one of the main components of Skia4Delphi. What makes it even more impressive is that the app only involves a few lines of codes. To top it all off, this Brick Game is a FireMonkey project! This means that this application can instantly work with multiple platforms such as Windows, macOS, Android, and iOS. To learn more about this amazing project that is done in Delphi using the Skia4Delphi library, feel free to watch the video below.

Read More

Why You Should Think About Analytics And Reporting Tools

Data is the biggest asset for any business. It can help enterprises better understand their customers. It also improves their advertising campaigns and personalizes their content. However, you cannot access these benefits without proper analytics and reporting tools. While raw data has a lot of potential, a business needs data analytics and reporting too. This article will cover why analytics and reporting tools are essential. We will also see how businesses can use these to improve their performances. But before that, let’s understand the difference between data analytics, reporting, and picturing. What is the difference between data Analytics and reporting tools for visualization? Data analytics refers to examining data sets to conclude the information they contain. It is a technique that enables a business to take raw data to extract valuable insights from it.  Data visualization is a term used to represent data through typical graphics. It uses charts, plots, animations, and infographics to represent data. These visuals display information that communicates complex data affairs. It also shows data-driven insights that are easy to grasp.  Data reporting is the process of collecting and formatting raw data. It also includes translating it into a clear format to assess the ongoing performance. This data can then be used to answer basic questions about the state of a business.  Why analytics and reporting tools for visualizations are essential for businesses What are data analytics?  Data analytics is generally used to help companies better understand their customers. It also helps in personalizing content and creating content strategies. With analytics, businesses evaluate their ad campaigns and develop products. Generally, businesses use data analytics to boost performance and improve their worth. The data can include historical or new information businesses get for a particular initiative.  The sublime example of data analytics is segmentation. It is used to help segment audiences by different demographic groups and analyze attitudes and trends. The businesses can then produce more specific, accurate, and just snapshots of public opinion.  What do we mean by data visualizations? Data visuals are essential for businesses that want to communicate information clearly and efficiently. It is an advanced step in data analysis and data science. As per the report of Vitaly Friedman (2008), business groups use data visuals. They use it as an essential component of assertive connection. Visuals make research and data analysis effective and quicker. It does so by combining user-friendly and pleasing features.  The best example of data picturing is making an institution’s budget. Budget numbers that are otherwise obscure and tough can be made simple and digestible with data visuals. This can then be delivered to the members to estimate the budget better.  Why is data reporting important? Data reporting is essential when measuring the progress of every area of a business group. It informs professional decisions and day-to-day matters at any company. A data report is also essential to prioritize business tasks. It tells where a company should spend most of its time and resources and what needs more attention.  The prime example of data reporting is business intelligence (BI) in healthcare. With its help, physicians can save lives by providing more effective and efficient patient care.  Once you know why data analytics, reporting, and visuals are essential for business. Let’s understand how companies can improve their processes using analytics and […]

Read More

Extend TMS WEB Core with JS Libraries with Andrew: Tabulator Part 4: Interacting with Tabulator

Last time, we looked at many possible customizations for Tabulator and other parts of a TMS WEB Core Project that were generally focused on the “look” of the application.  This included a handful of customizations to the content and format of the tables, as well as to other elements like images, fonts, and buttons.  The overall theme was changed a few times, resulting in the styling we have now, with a handful of CSS customizations to tweak every little detail.  This time out, we’re going to dig a bit deeper into the “feel” of the application.  Interacting with various elements, particularly with Tabulator, breathing a little more life into the application. Motivation. While there are many JavaScript grids available that work great within TMS WEB Core projects, and even when considering elements beyond grids and projects beyond TMS WEB Core, there are aesthetic properties (what we can see) but also interactive properties (what we can do) of the elements we select, as developers.  The aesthetic properties are perhaps easier to see and adjust, and in the TMS WEB Core project we’ve been creating, now called Actorious, we’ve seen how easy it is to use CSS to override the appearance of very nearly anything we want, from scrollbars to cell padding to fonts to borders.  Customizing interactions for a particular element is potentially more difficult, however, and we’re generally more reliant on an element’s built-in capabilities to help us out. But a web application has enormous potential for customizations even in this area.  We can add functionality and change element behaviors at will, with the goal of making the user experience as enjoyable as possible.  So in this post, we’re going to explore a bunch of these kinds of enhancements, while striving for a certain level of consistency and performance, filing off some rough edges along the way. Tooltips. Let’s ease into this topic with something that seems simple enough.  Tooltips.  In Delphi, they’re called hints.  And they work the same way straight out of the box in a TMS WEB Core application.  Add a button to a form. Add something to the Hint property. Hovering your mouse over the button produces a tooltip. We’re done, right?  Well, if you’ve been following along, you must know by now that we’re certainly not done at all.  We’ve not even really started! When it comes to tooltips generally, there are quite a few things you can customize to make them more useful or, alternatively, to get them out of your way.  The properties we’re going to address here are the overall look of the tooltip, the placement (relative to what it is linked to), as well as the delay – how quickly a tooltip appears and disappears.  For some tooltips, we actually want them to be almost instant.  And for others, we’d rather not see them at all most of the time.  Also keep in mind that tooltips might have varying levels of usefulness under different conditions.  Having a tooltip that shows “Biography” when you have a button that is clearly labeled “Biography” probably doesn’t make much sense, initially.  But later, when that row of buttons shrinks to just an icon if the form is displayed on a narrower display, suddenly the tooltip might be more useful. The look of a tooltip is […]

Read More