Tomaz Kastrun
@tomaztsql.bsky.social
DBCC outputbuffer (53) EXEC Xp dirtree °c: ,1,1 SELECT
* FROM ::fn trace getinfo(0) DBCC opentran(MASTER)
R enthusiast statistics Microsoft Data Platform MVP
* FROM ::fn trace getinfo(0) DBCC opentran(MASTER)
R enthusiast statistics Microsoft Data Platform MVP
Little useless-useful R functions – Finding substrings in number Pi
They say that number Pi holds all infinite possibilities, all the words, all the combinations. Well, easier said to be done. So let's put this to a test. This is my translational table. We will do this in the following steps (for…
They say that number Pi holds all infinite possibilities, all the words, all the combinations. Well, easier said to be done. So let's put this to a test. This is my translational table. We will do this in the following steps (for…
Little useless-useful R functions – Finding substrings in number Pi
They say that number Pi holds all infinite possibilities, all the words, all the combinations. Well, easier said to be done. So let's put this to a test. This is my translational table. We will do this in the following steps (for the word "eggs"): Encode the word EGGS to numbers. E = 5, G = 7, G = 7 and S = 19. Together concatenated we get the string of 57719. We store a veeery long string of PI number. Start looking in PI number for substring of "57719".
tomaztsql.wordpress.com
November 10, 2025 at 8:44 PM
Little useless-useful R functions – Finding substrings in number Pi
They say that number Pi holds all infinite possibilities, all the words, all the combinations. Well, easier said to be done. So let's put this to a test. This is my translational table. We will do this in the following steps (for…
They say that number Pi holds all infinite possibilities, all the words, all the combinations. Well, easier said to be done. So let's put this to a test. This is my translational table. We will do this in the following steps (for…
Little useless-useful R functions – Useless Pyramid of R needs
What motivates human behaviour can be captured in the Maslow's hierarchy of needs (source: Wiki). Maslow and psychologists have articulated these needs in a form of a Pyramid, and ever since the concept had been widely adopted (also…
What motivates human behaviour can be captured in the Maslow's hierarchy of needs (source: Wiki). Maslow and psychologists have articulated these needs in a form of a Pyramid, and ever since the concept had been widely adopted (also…
Little useless-useful R functions – Useless Pyramid of R needs
What motivates human behaviour can be captured in the Maslow's hierarchy of needs (source: Wiki). Maslow and psychologists have articulated these needs in a form of a Pyramid, and ever since the concept had been widely adopted (also criticised), and yet, another adaptation is the Pyramid of R needs 😀 Yes, R needs 🙂 What does it take to create and write an useless-useful R function. Well, let's dive into this reluctant nonsense, with a weary potential. The function is pure ggplot based depiction of pyramid. First version is stacked blocks and the second version is polygon in shape of triangle (resembling the pyramid).
tomaztsql.wordpress.com
November 2, 2025 at 9:22 AM
Little useless-useful R functions – Useless Pyramid of R needs
What motivates human behaviour can be captured in the Maslow's hierarchy of needs (source: Wiki). Maslow and psychologists have articulated these needs in a form of a Pyramid, and ever since the concept had been widely adopted (also…
What motivates human behaviour can be captured in the Maslow's hierarchy of needs (source: Wiki). Maslow and psychologists have articulated these needs in a form of a Pyramid, and ever since the concept had been widely adopted (also…
Little useless-useful R functions – Markov babbler
This one is named, yes, you guessed it, after Markov chains. 🙂 The babbler is there to connotate the simplicity of useless R function. It's simple calculation of probability of words chaining and drawing the multiple times appeared chained words…
This one is named, yes, you guessed it, after Markov chains. 🙂 The babbler is there to connotate the simplicity of useless R function. It's simple calculation of probability of words chaining and drawing the multiple times appeared chained words…
Little useless-useful R functions – Markov babbler
This one is named, yes, you guessed it, after Markov chains. 🙂 The babbler is there to connotate the simplicity of useless R function. It's simple calculation of probability of words chaining and drawing the multiple times appeared chained words reminds of markov chain (although this is not it!). The gist is is tokenization of words, counting the appearances and calculating the probabilities.
tomaztsql.wordpress.com
September 10, 2025 at 4:22 AM
Little useless-useful R functions – Markov babbler
This one is named, yes, you guessed it, after Markov chains. 🙂 The babbler is there to connotate the simplicity of useless R function. It's simple calculation of probability of words chaining and drawing the multiple times appeared chained words…
This one is named, yes, you guessed it, after Markov chains. 🙂 The babbler is there to connotate the simplicity of useless R function. It's simple calculation of probability of words chaining and drawing the multiple times appeared chained words…
Little useless-useful R functions – Absurd converter with Markdown report
This time, I will do an absurd amount of useless conversions 🙂 Some might make some sense - in the long looong run, but most will for sure have none. It all started with coffee 🙂 and the initial question was, how many…
This time, I will do an absurd amount of useless conversions 🙂 Some might make some sense - in the long looong run, but most will for sure have none. It all started with coffee 🙂 and the initial question was, how many…
Little useless-useful R functions – Absurd converter with Markdown report
This time, I will do an absurd amount of useless conversions 🙂 Some might make some sense - in the long looong run, but most will for sure have none. It all started with coffee 🙂 and the initial question was, how many Italian macchiatos you need to to distribute a litre of milk. Factor in, an Italian macchiato is an espresso and a small amount of steamed milk, usually with milk foam on top.
tomaztsql.wordpress.com
August 17, 2025 at 8:31 AM
Little useless-useful R functions – Absurd converter with Markdown report
This time, I will do an absurd amount of useless conversions 🙂 Some might make some sense - in the long looong run, but most will for sure have none. It all started with coffee 🙂 and the initial question was, how many…
This time, I will do an absurd amount of useless conversions 🙂 Some might make some sense - in the long looong run, but most will for sure have none. It all started with coffee 🙂 and the initial question was, how many…
Using Github actions for creating Unity catalog tables in Azure Databricks
Managing your tables and data DDL and CRUD using Github actions (or any DevOps tool) is a great way to have your Azure Databricks Unity catalog developed from ground up with DevOps pipelines. And to evolve further catalogs,…
Managing your tables and data DDL and CRUD using Github actions (or any DevOps tool) is a great way to have your Azure Databricks Unity catalog developed from ground up with DevOps pipelines. And to evolve further catalogs,…
Using Github actions for creating Unity catalog tables in Azure Databricks
Managing your tables and data DDL and CRUD using Github actions (or any DevOps tool) is a great way to have your Azure Databricks Unity catalog developed from ground up with DevOps pipelines. And to evolve further catalogs, schemas or tables for robust development As a prerequisite, you will need an Azure Databricks workspace created with SQL warehouse compute available. On top of that, a…
tomaztsql.wordpress.com
August 16, 2025 at 7:45 AM
Using Github actions for creating Unity catalog tables in Azure Databricks
Managing your tables and data DDL and CRUD using Github actions (or any DevOps tool) is a great way to have your Azure Databricks Unity catalog developed from ground up with DevOps pipelines. And to evolve further catalogs,…
Managing your tables and data DDL and CRUD using Github actions (or any DevOps tool) is a great way to have your Azure Databricks Unity catalog developed from ground up with DevOps pipelines. And to evolve further catalogs,…
Little useless-useful R functions – Absurd bias DAG with useless mental shortcuts
Exploring graphs is always a fun. Attaching the edges and nodes with real examples of psychological effects and accompany them with useless mental shortcuts is beyond fun. This is why we will call it a "cognitive…
Exploring graphs is always a fun. Attaching the edges and nodes with real examples of psychological effects and accompany them with useless mental shortcuts is beyond fun. This is why we will call it a "cognitive…
Little useless-useful R functions – Absurd bias DAG with useless mental shortcuts
Exploring graphs is always a fun. Attaching the edges and nodes with real examples of psychological effects and accompany them with useless mental shortcuts is beyond fun. This is why we will call it a "cognitive bias" explorer using DAG. Here are the graphs edges and nodes and we are calling them biases and weird links. Because, yes 🙂 Let's mix the math with psychology.
tomaztsql.wordpress.com
May 25, 2025 at 6:29 PM
Little useless-useful R functions – Absurd bias DAG with useless mental shortcuts
Exploring graphs is always a fun. Attaching the edges and nodes with real examples of psychological effects and accompany them with useless mental shortcuts is beyond fun. This is why we will call it a "cognitive…
Exploring graphs is always a fun. Attaching the edges and nodes with real examples of psychological effects and accompany them with useless mental shortcuts is beyond fun. This is why we will call it a "cognitive…
Reposted by Tomaz Kastrun
💻⚡️ Old-school commands, brand-new muscle! Watch #MicrosoftFabric CLI crush clicks and super-charge Power BI now
👉 guyinacu.be/fabriccli #PowerBI #DataOps
👉 guyinacu.be/fabriccli #PowerBI #DataOps
May 21, 2025 at 3:15 PM
💻⚡️ Old-school commands, brand-new muscle! Watch #MicrosoftFabric CLI crush clicks and super-charge Power BI now
👉 guyinacu.be/fabriccli #PowerBI #DataOps
👉 guyinacu.be/fabriccli #PowerBI #DataOps
SQL Server 2025 is in public preview! Yeees!!!
www.microsoft.com/en-us/sql-se...
www.microsoft.com/en-us/sql-se...
Announcing SQL Server 2025 (preview): The AI-ready enterprise database from ground to cloud - Microsoft SQL Server Blog
Announcing SQL Server 2025—empowering customers to develop modern AI applications securely using their data, complete with best-in-class security, performance, and availability.
www.microsoft.com
May 22, 2025 at 3:03 AM
SQL Server 2025 is in public preview! Yeees!!!
www.microsoft.com/en-us/sql-se...
www.microsoft.com/en-us/sql-se...
Here is a tariff that might help the economy.
Put tariff on exporting data to excel. 😂
Put tariff on exporting data to excel. 😂
April 14, 2025 at 5:47 AM
Here is a tariff that might help the economy.
Put tariff on exporting data to excel. 😂
Put tariff on exporting data to excel. 😂
DataSaturday Pordenone 2025
February 22, 2025 at 8:21 AM
DataSaturday Pordenone 2025
Reposted by Tomaz Kastrun
🎉It's Fabric February week!🎉
I'm speaking at #FabricFebruary on Thursday the 6th Feb. I'll be exploring the how, why, and when you should bring #MicrosoftFabric and #Databricks together...and the answer isn't just "it depends"...promise!
Check the full agenda at fabricfebruary.com
I'm speaking at #FabricFebruary on Thursday the 6th Feb. I'll be exploring the how, why, and when you should bring #MicrosoftFabric and #Databricks together...and the answer isn't just "it depends"...promise!
Check the full agenda at fabricfebruary.com
February 3, 2025 at 10:44 AM
🎉It's Fabric February week!🎉
I'm speaking at #FabricFebruary on Thursday the 6th Feb. I'll be exploring the how, why, and when you should bring #MicrosoftFabric and #Databricks together...and the answer isn't just "it depends"...promise!
Check the full agenda at fabricfebruary.com
I'm speaking at #FabricFebruary on Thursday the 6th Feb. I'll be exploring the how, why, and when you should bring #MicrosoftFabric and #Databricks together...and the answer isn't just "it depends"...promise!
Check the full agenda at fabricfebruary.com
Reposted by Tomaz Kastrun
[docs] Updated your favorite Transactional Replication version compatibility with the details on compatibility with #Azure #SQLDB & #Azure #SQLMI (all update policies):
Kudos to @sasapopovicsql.bsky.social and team:
learn.microsoft.com/en-us/sql/re...
#azuresql #sqldb #sqlmi #replication
Kudos to @sasapopovicsql.bsky.social and team:
learn.microsoft.com/en-us/sql/re...
#azuresql #sqldb #sqlmi #replication
Replication backward compatibility - SQL Server
Review these resources for backward compatibility in replication before you upgrade or if you have several versions of SQL Server in a replication topology.
learn.microsoft.com
February 4, 2025 at 12:04 PM
[docs] Updated your favorite Transactional Replication version compatibility with the details on compatibility with #Azure #SQLDB & #Azure #SQLMI (all update policies):
Kudos to @sasapopovicsql.bsky.social and team:
learn.microsoft.com/en-us/sql/re...
#azuresql #sqldb #sqlmi #replication
Kudos to @sasapopovicsql.bsky.social and team:
learn.microsoft.com/en-us/sql/re...
#azuresql #sqldb #sqlmi #replication
DeepSeek R1 on Azure AI Foundry
Starting with the end of January 2025, DeepSeek R1 model has had a huge impact on how the AI community, developers and general public see Generative Models. Not only that is free (as of writing this blog post), but the refinement of the information made it possible,…
Starting with the end of January 2025, DeepSeek R1 model has had a huge impact on how the AI community, developers and general public see Generative Models. Not only that is free (as of writing this blog post), but the refinement of the information made it possible,…
DeepSeek R1 on Azure AI Foundry
Starting with the end of January 2025, DeepSeek R1 model has had a huge impact on how the AI community, developers and general public see Generative Models. Not only that is free (as of writing this blog post), but the refinement of the information made it possible, that the models are smaller than original GPT-4 and similar. Benefiting in smaller costs for training, running and improving reasoning.
tomaztsql.wordpress.com
February 2, 2025 at 10:01 AM
DeepSeek R1 on Azure AI Foundry
Starting with the end of January 2025, DeepSeek R1 model has had a huge impact on how the AI community, developers and general public see Generative Models. Not only that is free (as of writing this blog post), but the refinement of the information made it possible,…
Starting with the end of January 2025, DeepSeek R1 model has had a huge impact on how the AI community, developers and general public see Generative Models. Not only that is free (as of writing this blog post), but the refinement of the information made it possible,…
Reposted by Tomaz Kastrun
Ben & @wstrasser.bsky.social kicking off #DataCommunityAustria Day
January 24, 2025 at 8:04 AM
Ben & @wstrasser.bsky.social kicking off #DataCommunityAustria Day
Reposted by Tomaz Kastrun
Today is #DataCommunityDayAustria! I'm having the pleasure to present my #UnitTesting for #Databases session for the first time in less than 1 hour, join me in the Symphonia room at 9:15AM
January 24, 2025 at 7:20 AM
Today is #DataCommunityDayAustria! I'm having the pleasure to present my #UnitTesting for #Databases session for the first time in less than 1 hour, join me in the Symphonia room at 9:15AM
Little useless-useful R functions – QR-Code Clock
Ever wanted to have a clock on the wall or in the office, that is not binary. But it is QR-Code clock 🙂 Well, now you can have it. This useless R function generates new QR Code for every given period and tells the time. Run this function:…
Ever wanted to have a clock on the wall or in the office, that is not binary. But it is QR-Code clock 🙂 Well, now you can have it. This useless R function generates new QR Code for every given period and tells the time. Run this function:…
Little useless-useful R functions – QR-Code Clock
Ever wanted to have a clock on the wall or in the office, that is not binary. But it is QR-Code clock 🙂 Well, now you can have it. This useless R function generates new QR Code for every given period and tells the time. Run this function: library(qrcode) while (Sys.time()+1 > Sys.time()){ n_o_w <- paste0("Current time is ",as.character(format(Sys.time(), "%X"))) print(n_o_w) qr_code(n_o_w, ecl = "M" ) |> plot() Sys.sleep(10) }
tomaztsql.wordpress.com
January 8, 2025 at 6:15 AM
Little useless-useful R functions – QR-Code Clock
Ever wanted to have a clock on the wall or in the office, that is not binary. But it is QR-Code clock 🙂 Well, now you can have it. This useless R function generates new QR Code for every given period and tells the time. Run this function:…
Ever wanted to have a clock on the wall or in the office, that is not binary. But it is QR-Code clock 🙂 Well, now you can have it. This useless R function generates new QR Code for every given period and tells the time. Run this function:…
Little useless-useful R functions – Vanishing sentences
Let’s play with some words. More in particular with vanishing words. Using two packages: ggplot2 and gganimate we will construct a animation (looped), where sentences will be vanishing, word by word. A nice way to train the ggplot animations.…
Let’s play with some words. More in particular with vanishing words. Using two packages: ggplot2 and gganimate we will construct a animation (looped), where sentences will be vanishing, word by word. A nice way to train the ggplot animations.…
Little useless-useful R functions – Vanishing sentences
Let’s play with some words. More in particular with vanishing words. Using two packages: ggplot2 and gganimate we will construct a animation (looped), where sentences will be vanishing, word by word. A nice way to train the ggplot animations. The function is combination of data frame wrangling and visualizations: vanishing_sentence <- function(sentence, output_file = NULL, interval = 0.5) { words <- unlist(strsplit(sentence, " ")) vanishing_order <- sample(seq_along(words)) sentence_data <- data.frame( word = words, position = seq_along(words), vanish_step = match(seq_along(words), vanishing_order) ) # sequence animation_data <- do.call(rbind, lapply(1:(max(sentence_data$vanish_step) + 1), function(step) { sentence_data %>% mutate(visible = ifelse(vanish_step >= step, TRUE, FALSE)) %>% group_by(position) %>% summarize(word = ifelse(visible, word, ""), .groups = "drop") %>% mutate(step = step) })) p <- ggplot(animation_data, aes(x = position, y = 1, label = word)) + geom_text(size = 6, hjust = 0.5, vjust = 0.5, fontface = "bold") + theme_void() + theme( plot.margin = margin(1, 1, 1, 1, "cm"), plot.background = element_rect(fill = "white", color = NA) ) + transition_states(step, transition_length = interval,state_length = 1) + enter_fade() + exit_fade() + ease_aes("linear") # render and save if (!is.null(output_file)) { anim <- animate( p,nframes = length(words) + 10, fps = 10,width = 800,height = 400, renderer = gifski_renderer(output_file) ) return(anim) } else { animate( p, nframes = length(words) + 10, fps = 10, width = 800, height = 400 ) } }
tomaztsql.wordpress.com
January 6, 2025 at 1:28 PM
Little useless-useful R functions – Vanishing sentences
Let’s play with some words. More in particular with vanishing words. Using two packages: ggplot2 and gganimate we will construct a animation (looped), where sentences will be vanishing, word by word. A nice way to train the ggplot animations.…
Let’s play with some words. More in particular with vanishing words. Using two packages: ggplot2 and gganimate we will construct a animation (looped), where sentences will be vanishing, word by word. A nice way to train the ggplot animations.…
Reposted by Tomaz Kastrun
Cleopatra lived closer in time to 'yeet' being in the dictionary than to the construction of the Great Pyramid of Giza.
January 5, 2025 at 1:55 AM
Cleopatra lived closer in time to 'yeet' being in the dictionary than to the construction of the Great Pyramid of Giza.
Reposted by Tomaz Kastrun
Happy New Year #sqlfamily 💛 we are kicking off 2025 with a call for speakers for our 7th event which will take place on 1st March. There will only be three tracks this time each with a dedicated topic:
- #MicrosoftFabric
- #PowerBI
- #SqlServer
sessionize.com/dataweekende...
#DataWeekender #CFS
- #MicrosoftFabric
- #PowerBI
- #SqlServer
sessionize.com/dataweekende...
#DataWeekender #CFS
#DataWeekender 7.0: Call for Speakers
Data Community Weekender is a free online conference running on Saturday March, 1st 2025 for the Microsoft Data Platform Community.Our main organizati...
sessionize.com
January 1, 2025 at 2:04 PM
Happy New Year #sqlfamily 💛 we are kicking off 2025 with a call for speakers for our 7th event which will take place on 1st March. There will only be three tracks this time each with a dedicated topic:
- #MicrosoftFabric
- #PowerBI
- #SqlServer
sessionize.com/dataweekende...
#DataWeekender #CFS
- #MicrosoftFabric
- #PowerBI
- #SqlServer
sessionize.com/dataweekende...
#DataWeekender #CFS
Some of the more useful Tidyverse functions
R functions for every data engineer using Tidyverse Tidyverse has long been an amazing collection of R packages, primarily for data engineering and data science. Common among these packages is the same language grammar, great design and structure, making…
R functions for every data engineer using Tidyverse Tidyverse has long been an amazing collection of R packages, primarily for data engineering and data science. Common among these packages is the same language grammar, great design and structure, making…
Some of the more useful Tidyverse functions
R functions for every data engineer using Tidyverse Tidyverse has long been an amazing collection of R packages, primarily for data engineering and data science. Common among these packages is the same language grammar, great design and structure, making data science easier. Motivation Data engineering is important step that helps improve data usability, data exploration and data science. Preparing the data needs therefore needs to be done in a manner, that is easy to read, repeat and exchange between others engineers.
tomaztsql.wordpress.com
January 1, 2025 at 8:18 AM
Some of the more useful Tidyverse functions
R functions for every data engineer using Tidyverse Tidyverse has long been an amazing collection of R packages, primarily for data engineering and data science. Common among these packages is the same language grammar, great design and structure, making…
R functions for every data engineer using Tidyverse Tidyverse has long been an amazing collection of R packages, primarily for data engineering and data science. Common among these packages is the same language grammar, great design and structure, making…