Kissaki

joined 2 years ago
[–] Kissaki@programming.dev 5 points 2 days ago* (last edited 2 days ago)

What makes this URL an API?

Do they disclose it as free use anywhere?

[–] Kissaki@programming.dev 2 points 2 days ago

I've looked into it a little bit after their comment. The company is registered in Cyprus. Not much more official or verifiable info I could find. Their developers seem to be in Russia. For me that was enough to look for alternatives.

I looked for German ones in particular because I'm from Germany, and https://dnsforge.de/ has one with ad blocking and DNS over HTTPS (necessary for Windows which has no choice of DNS over TCP).

[–] Kissaki@programming.dev 11 points 2 days ago

Funny how three comments that follow, by other people, do not get such a comment by the bot.

It also seems like the comment addresses a commenter, not the PR creator, so saying "you may resubmit after fixing" makes no sense. Post the comment again?

[–] Kissaki@programming.dev 3 points 2 days ago* (last edited 2 days ago) (1 children)

…is a protocol and doesn't answer how or where to host your chat and how to onboard users with convenience and clarity.

The biggest issue is a lack of chat history. Host a chat and people can post a question and come back to the answer another day. But not on IRC.

It's certainly simpler and more stable than Matrix though.

[–] Kissaki@programming.dev 1 points 3 days ago

They host a public DNS you can use.

They also offer DNS with more configuration. And then they also offer this app, which does more.

[–] Kissaki@programming.dev 3 points 4 days ago

Forgejo will now transform fediverse handles (ex. @forgejo@floss.social and [!forgejo@programming.dev](/c/forgejo@programming.dev)) into links to https://fedirect.toolforge.org/, a website hosted by Wikimedia, to redirect fediverse handles to their respective URLs via Webfinger. Forgejo is working on implementing proper federated mentions that will also notify users on other federated services, which the redirection does not do.

[–] Kissaki@programming.dev 21 points 4 days ago* (last edited 3 days ago) (2 children)

OpenGL is an API standard. It defines data structures, operation interfaces, and behavior.

Mesa 3D is an implementation of OpenGL. It can be used so users of OpenGL can call it to draw stuff.

Vulkan is a newer API standard. It is newer and was designed with a lot of new hardware and hardware capabilities in mind, and significantly reduced what the job of the API is supposed to do compared to OpenGL. Essentially giving API users many more opportunities to control graphics pipeline behavior for better efficiency and performance. Libraries and frameworks exist that provide more convenience and prepared setup or opinionated usage patterns on top of Vulkan.

DirectX had a similar shift with DirectX version 12, which also implemented closer-to-hardware APIs similar to Vulkan vs OpenGL.

/edit: Noteworthy are also OpenGL and Vulkan extensions. They extend the core API with additional APIs. An app can check if they are supported, and if the driver supports it, can use them.

[–] Kissaki@programming.dev 3 points 4 days ago (2 children)

Have you considered AdGuard Public DNS? What made you choose NextDNS over it?

[–] Kissaki@programming.dev 2 points 4 days ago (2 children)

I value choosing between two styles by feel for improving readability and conciseness.

For example, allowing one-liner early-returns if they are concise enough. If they are not, they must be multi-line with a block with curly braces. There's no linter rule that defines what "simple enough" is, and most linters don't do rules with condition either.

[–] Kissaki@programming.dev 2 points 5 days ago (1 children)

Web is just one kind of frontend though. And there's more ways to target web with JavaScript interfacing than transpiling to JavaScript.

[–] Kissaki@programming.dev 11 points 5 days ago* (last edited 5 days ago) (7 children)

Apps like AdGuard for Windows or macOS work at the system level, so they block ads and trackers across all browsers and even other apps.

How? What does "system level" mean? Sounds like it must be not only system level but manipulating programs?

/edit: Product page and FAQ are non-telling. Finally found the knowledge base which is not linked in the main nav.

They man-in-the-middle HTTPS for example. So yeah, more intrusive than what I would understand as "system level" behavior.

How does HTTPS filtering work? If it were easy, HTTPS wouldn’t be that secure.

Uhm, yeah.

[–] Kissaki@programming.dev 9 points 5 days ago* (last edited 5 days ago) (1 children)

I don't get what the article is trying to say. It contradicts itself or doesn't make sense.

consists of Instagram, Meta-owned Facebook, and Snapchat

Meta-owned Facebook - contrary to… Meta-owned Instagram? The whole point of the article is that Meta owns both. I'm confused by one being owner-labeled here and the other not, in a listing of services, describing social media landscape.

the now-competing platforms would see more ads – including the same ones on both platforms, which the researchers show could lead to lower click-through rates

Their whole argument is: 1. competition leads to lower ad prices 2. split and lower ad prices leads to more ad impressions/displaying

Lower click-through rates are not a problem for users either.
Will users really see the same ads on both platforms when they did not before?
The article should have better separated advertiser impact from user impact.

What's left is their claim, apparently founded on previous and their own new studies, that users will see more ads. I'm skeptical we can say that now. Especially with why this whole thing is a question in the first place…

This isn’t good news for the FTC, which sued Meta in 2020 on the grounds that it acquired Instagram in 2012 and WhatsApp two years later with the intention of using its market power to squash competitors.

Not good news for the FTC? They sue for monopoly and win. What does that have to do with ads and ad impressions? So far off the whole point.

Katz cautions that their study isn’t saying that an Instagram spin-off would necessarily be the wrong solution if Meta is ruled a monopolist. While the effects on digital advertising are significant, “there are other reasons why a Facebook-Instagram separation might be beneficial,” he says. “This includes encouraging other platforms to enter the social media market or investments in other aspects of the user experience, like better privacy protections.”

Last paragraph, or quote, seems to disregard the entire article that came before it.

 

Examples from the README

example 1

[
  { "let": { "name": "JSON", "times": 3 } },
  {
    "for": {
      "var": "i",
      "from": 1,
      "to": "times",
      "do": [
        { "print": { "add": ["Hello ", "name"] } }
      ]
    }
  }
]

example 2

[
  { "import": "system.jpl" },
  { "print": { "call": { "now": [] } } },
  { "print": { "call": { "osName": [] } } },
  { "print": { "call": { "cpuCount": [] } } },
  { "let": { "a": 9, "b": 4, "name": "JPL" } },
  { "print": { "add": ["\"a + b = \"", { "add": ["a", "b"] }] } },
  { "print": { "mul": ["a", "b"] } },
  { "print": { "div": ["a", "b"] } },
  { "print": { "mod": ["a", "b"] } },
  { "print": { "&": [6, 3] } },
  { "print": { "||": [false, true] } },
  { "print": { "gt": ["a", "b"] } },
  { "def": { "sq": { "params": ["x"], "body": [{ "return": { "mul": ["x", "x"] } }] } } },
  { "print": { "call": { "sq": [5] } } },
  { "def": { "greet": { "params": ["who"], "body": [{ "return": { "add": ["\"Hi, \"", "who"] } }] } } },
  { "print": { "call": { "greet": ["\"JSON Fan\""] } } },
  { "if": { "cond": { "<": ["b", "a"] }, "then": { "print": "\"b < a 👍\"" }, "else": { "print": "\"b >= a 🤔\"" } } },
  { "for": { "var": "i", "from": 1, "to": 3, "step": 1, "do": [ { "print": { "call": { "sq": ["i"] } } } ] } },
  { "print": "\"All features in one! 🎉\"" }
]

example 3

[
// 🚀 Welcome to JPL — JSON Programming Language!

// Import system utilities for fun stuff
{ "import": "system.jpl" },

// Print system info
{ "print": { "call": { "now": [] } } },
{ "print": { "call": { "osName": [] } } },
{ "print": { "call": { "cpuCount": [] } } },

// Define a math function to square a number
{
  "def": {
    "square": {
      "params": ["x"],
      "body": [
        { "return": { "mul": ["x", "x"] } }
      ]
    }
  }
},

// Greet a user
{
  "def": {
    "greet": {
      "params": ["name"],
      "body": [
        { "return": { "add": ["Hello, ", "name"] } }
      ]
    }
  }
},

// Declare variables
{ "let": { "a": 7, "user": "Kapil" } },

// Use greet function and print
{ "print": { "call": { "greet": ["user"] } } },

// Conditional message
{
  "if": {
    "cond": { ">": ["a", 5] },
    "then": { "print": "a is greater than 5" },
    "else": { "print": "a is 5 or less" }
  }
},

// Loop with break and continue
{
  "for": {
    "var": "i",
    "from": 1,
    "to": 10,
    "step": 1,
    "do": [
      { "if": { "cond": { "eq": ["i", 3] }, "then": { "continue": true } } },
      { "if": { "cond": { "gt": ["i", 7] }, "then": { "break": true } } },
      { "print": { "call": { "square": ["i"] } } }
    ]
  }
},

// Fun ending message
{ "print": "🎉 Done with curly braces and JSON fun!" }
]

 

The population (especially the younger generation, who never seen a different kind of technology at all) is being conditioned by the tech industry to accept that software should behave like an unreliable, manipulative human rather than a precise, predictable machine. They're learning that you can't simply tell a computer "I'm not interested" and expect it to respect that choice. Instead, you must engage in a perpetual dance of "not now, please" - only to face the same prompts again and again.

 

Starts with the basics of how Datamoshing works in video encoding, then explores it in game engine rendering.

 

Developer experience, concrete examples, contextualized, including flaws/edge of capabilities.

Ideation, Maintenance, Coding, Testing, Debugging, …

Chapters:

  • Speaker Introductions
  • 00:03:03 - Personal experiences with AI in coding
  • 00:14:41 - Updating regular expression engine
  • 00:31:39 - AI Assisting in Code Writing and Fixing Mistakes
  • 00:34:01 - AI-Driven Regex Capabilities for Uri Templates
  • 00:37:59 - Enhancements in Memory Extensions
  • 00:44:10 - Discussion about AI handling tasks and upcoming merge
  • 00:46:00 - AI creates and handles test cases automatically
  • 00:46:57 - AI tackles project tasks, improves efficiency, and handles edge cases

A good look into how it is and can currently be used.

 

cross-posted from: https://programming.dev/post/31210046

Firefox 139.0 released yesterday, with support for the Temporal JavaScript API.

I explored the API, writing down the most relevant interfaces into a reference or cheat sheet.

It's certainly and finally a thorough API for handling temporal information. Working with zoned datetime across time offsets and time zones can get very confusing, though.

I love how you can work with them though, especially with durations.

console.log(Temporal.PlainDateTime.from('2025-02-05T08:00:00'))

console.log(Temporal.Now.plainDateTimeISO("Europe/Berlin"))

console.log(Temporal.Now.plainDateTimeISO().add('PT2M0.2S').subtract('PT0.5S').since(Temporal.Now.plainDateTimeISO()))

console.log(Temporal.ZonedDateTime.from('2025-02-05T13:57:35.777888[Europe/Berlin]').withTimeZone('Europe/London'))
 

Firefox 139.0 released yesterday, with support for the Temporal JavaScript API.

I explored the API, writing down the most relevant interfaces into a reference or cheat sheet.

It's certainly and finally a thorough API for handling temporal information. Working with zoned datetime across time offsets and time zones can get very confusing, though.

I love how you can work with them though, especially with durations.

console.log(Temporal.PlainDateTime.from('2025-02-05T08:00:00'))

console.log(Temporal.Now.plainDateTimeISO("Europe/Berlin"))

console.log(Temporal.Now.plainDateTimeISO().add('PT2M0.2S').subtract('PT0.5S').since(Temporal.Now.plainDateTimeISO()))

console.log(Temporal.ZonedDateTime.from('2025-02-05T13:57:35.777888[Europe/Berlin]').withTimeZone('Europe/London'))
view more: next ›